python作业_0922
9月22作业 - python基础
一、主观题
1、python中一行代码太长,强制换行如何实现?
使用反斜杠 \ 进行显式换行;
对于列表、元组、字典等容器类型,可直接换行(隐式换行):
1 | # 使用 \ 换行 |
2、python 中 隐式类型转换有哪些?强制类型转换有哪些?
- 隐式类型转换(自动):
1 | print(1 + 2.0) # → 3.0(int自动转float) |
注意:字符串和数字不能隐式转换,会报错
- 强制类型转换(显式):
1 | int(x) # 转整型 |
3、如何定义列表?读写列表、列表切片、列表相加、重复、获取列表长度,判断列表是否包含某元素
- 定义:用方括号
[],如lst = [1, 2, 3] - 读写:通过索引访问或修改,如
lst[0],lst[1] = 99 - 切片:
lst[start:end:step],如lst[1:3] - 相加/重复:
+拼接,*重复,如[1,2] + [3,4],[1] * 3 - 长度:
len(lst) - 判断包含:用
in,如3 in lst
4、如何定义空元组?读取元组、元组切片、重复、获取长度?
1 | # 定义空元组 |
单元素元组:必须加逗号,如 (1,)
注意:元组不可修改元素(但可修改其包含的可变对象如列表)
5、如何定义set集合?新增列表值、删除列表值、定义空集合、集合运算
注意:不能新增“列表值”,因为列表不可哈希
1 | # 定义集合 |
6、List列表中存在重复的值,如何去重?
最简单是转为 set 再转回 list,但会丢失顺序;
若需保持顺序,可用遍历判断是否已存在。
1 | lst = [1, 2, 2, 3, 3, 4] |
7、如何定义字典?定义空字典、新增字典、删除字典、修改字典、遍历循环字典
1 | # 定义字典 |
8、python常见的数学方法有哪些?
需导入 math 模块
abs(),max(),min(),pow()ceil(),floor(),round()modf()分离整数小数部分pi,e常数
1 | from math import ceil, floor, modf, pi |
9、如何随机取出数组两个不重复的成员?
可先随机取一个,再取第二个并判断是否相同,不同则保留,相同则重取;更优方法是使用 random.sample(seq, 2)
1 | from random import choice |
10、python有哪些随机方法?区别是什么?
1 | from random import choice, shuffle, uniform |
11、定义一个学生数据的字典类型、包含字段id、姓名、得分、日期,然后循环输出到终端界面,注意输出好看些。
1 | student = {'id': 1001,'name': '张三','score': 95.5,'date': '2025-09-22'} |
12、练习python随机生成git hash码
Git Hash 是 40 位十六进制字符串,可用 random.choice 从 0123456789abcdef 中随机选 40 次拼接而成。
1 | from random import choice |
二、进阶题
1、定义一个学生数据的列表类型、包含字段id、姓名、得分、日期。然后在使用input获取用户输入的页码,在终端实现一个简单的分页显示效果
1 | students = [ |
今日默写和语音题
1、python有哪些数据类型?
- 数字类型:整数
int、浮点数float、复数complex、布尔型bool - 字符串类型:
str - 列表类型:
list - 元组类型:
tuple - 集合类型:
set - 字典类型:
dict - 字节类型:
bytes - 特殊类型:
None假值
2、检测python数据类型的方法是什么?
使用内置函数:type()
1 | print(type(123)) # <class 'int'> |
3、python强制类型转换有哪些?
int(x)—— 转整型float(x)—— 转浮点型str(x)—— 转字符串repr(x)—— 转为表达式字符串(带引号)eval(str)—— 执行字符串表达式chr(x)—— 整数转字符(ASCII)ord(x)—— 字符转整数(ASCII码)hex(x)—— 转十六进制字符串
int, float, str, repr, eval, chr, ord, hex
明天默写和面试题
1、怎样确定CPU占用最高的进程?
使用top命令动态查看,按大写P键可以调整成按CPU占用率排序。
也可以在查看全部进程的ps aux的基础上使用sort长选项进行排序,然后使用head命令提取前几行,即:ps aux –sort=-%cpu | head -n 2。
2、如何两台设备之间传输文件?
使用scp命令在两台设备之间传输文件,当然,前提条件是这两台设备是网络连通的。
而在网络不连通的场景下,我们如果物理接触方便的话可以考虑使用U盘这类存储介质进行传递。
3、网络如果连不通怎么办?
首先检查物理连接,以确保所有线缆都已正确且牢固地插入。
然后检查网络设置,确认在操作系统中配置的网络设置是否正确,例如IP地址、子网掩码、默认网关和DNS服务器等。
如果无误再测试网络连接,使用ping命令测试网络连通性,如:ping www.baidu.com。
如果无法ping通,则可能是互联网连接出现问题。
4、项目如何部署?
首先,不同的项目有不同的部署方式。
如果有文档的话,我会依照文档上的内容进行部署;
对于没有文档的项目,则会依照项目的需求进行部署。我的这个项目的部署流程,首先是准备好了一台Linux系统的设备,然后配置系统的网络设置,使其变更为静态网络,同时更新现有的系统环境。
准备完毕后,安装项目所需的MySQL、Nginx、jre等所需的应用。
然后启动MySQL服务,配置好MySQL服务针对项目所需的用户,导入项目所需的数据库结构;
启动Nginx服务,配置开机自启,添加前端静态资源,对应后端服务,配置好反向代理;
书写一个项目的外置配置文件,同时配置一个项目的启动服务,创建一个用户,专门运行项目的启动服务,并使其使用外置配置文件启动项目,以覆盖项目现有的数据库资源信息。
至此,项目的服务全部配置完毕。
然后放行项目的前端端口和被反向代理后的API端口。
使用另外一台设备,访问配置好项目的服务器的IP地址和端口号以作测试。测试通过则部署完毕。




