python面试题——基础篇

1.python保留字有哪些?

序号保留字说明
1 and 逻辑与操作,用于表达式运算
2 as 用于转换数据类型
3 assert 用于判断变量或条件表达式的结果
4 async 用于启用异步操作
5 await 用于异步操作中等待协程返回
6 break 中断循环语句的执行
7 class 定义类
8 continue 继续执行下一次循环
9 def 定义函数或方法
10 del 删除变量或序列的值
11 elif 条件语句,与 if、else 结合使用
12 else 条件语句,与 if、else 结合使用;也可用于异常或循环语句
13 except 包含捕获异常后的处理代码块,与 try、finally 结合使用
14 False 含义为“假”的逻辑值
15 finally 包含捕获异常后的始终要调用的代码块,与 try、except 结合使用
16 for 循环语句
17 from 用于导入模块,与 import 结合使用
18 global 用于在函数或其他局部作用域中使用全局变量
19 if 条件语句,与 elif、else 结合使用
20 import 导入模块,与 from 结合使用
21 in 判断变量是否在序列中
22 is 判断变量是否为某个类的实例
23 lambda 定义匿名函数
24 None 表示一个空对象或是一个特殊的空值
25 nonlocal 用于在函数或其他作用域中使用外层(非全局)变量
26 not 逻辑非操作,用于表达式运算
27 or 逻辑或操作,用于表达式运算
28 pass 空的类、方法或函数的占位符
29 raise 用于抛出异常
30 return 从函数返回计算结果
31 True 含义为“真”的逻辑值
32 try 测试执行可能出现异常的代码,与 except, finally 结合使用
33 while 循环语句
34 with 简化 Python 的语句
35 yield 从函数依次返回值

 

2.运算符is与==有什么区别?

python中对象包含三种元素:id、type、value。其中,id是唯一标识,type标识对象类型,value则是对象的值。

is是用判断a对象是否就是b对象,是用id来判断的

a = [1,2,3]
b = a
b is a
输出True

 

==用来判断a对象的值是否和b对象相等

b == a
True
b == a[:]
b is a
False
b == a
True

 

 

3.如何删除列表中重复元素?

这种方法,利用集合(set)中元素的不可重复性,在用sort进行排序

lis = ['a','a','b','c','c','b','d']
new_list = list(set(lis))
new_list.sort(key=lis.index)
print(new_list)

 

结果:['a', 'b', 'c', 'd']

4.如果求两个列表的交集、差集、并集?

a = [1,2,3,4,5]
b = [2,4,5,6,7]

# 交集
result = [r for r in a if r in b]
print("交集:",result)

# 差集(在a中,不在b中)
result = [r for r in a if r not in b]
print("差集:",result)

# 并集
result = a
for r in b:
    if r not in result:
        result.append(r)
print("并集:",result)

 

结果:

交集: [2, 4, 5]
差集: [1, 3]
并集: [1, 2, 3, 4, 5, 6, 7]

5.列表的常用方法有哪些?

方法意义
L.index(v [, begin[, end]]) 返回对应元素的索引下标, begin为开始索引,end为结束索引,当 value 不存在时触发ValueError错误
L.insert(index, obj) 将某个元素插放到列表中指定的位置
L.count(x) 返回列表中元素的个数
L.remove(x) 从列表中删除第一次出现在列表中的值
L.copy() 复制此列表(只复制一层,不会复制深层对象)
L.append(x) 向列表中追加单个元素
L.extend(lst) 向列表追加另一个列表
L.clear() 清空列表,等同于 L[:] = []
L.sort(reverse=False) 将列表中的元素进行排序,默认顺序按值的小到大的顺序排列
L.reverse() 列表的反转,用来改变原列表的先后顺序
L.pop([index]) 删除索引对应的元素,如果不加索引,默认删除最后元素,同时返回删除元素的引用关系

 6.怎么去除字符串左边空格、右边空格、首尾空格?

s = "      hello       "
print("去除左边空格",s.lstrip())
print("去除右边空格",s.rstrip())
print("去除首尾空格",s.strip())

 

 7.什么是模块、怎么导入模块?

在python中,一个.py文件就是一个模块。模块提高了代码的可维护性,它可以被其他地方引用。一个包含很多Python文件的文件夹是一个包。一个包可以包含模块和子文件夹。模块可以分为以下几种:

1)内置模块:例如os、random、time

2)第三方模块:别人写好的模块,可以拿来就用,但是需要用pip安装。

3)自定义模块:编程人员自己封装的模块。

如何导入模块:

1)将整个模块导入: import somemodule

2)从某个模块导入某个函数:from somemodule import somefunction

3)从某个模块中导入多个函数:from somemodule import 1func,2func,3func

4)将某个模块中的全部函数导入:from somemodule import *

5)起别名导入:import random as rd 

 

posted @ 2022-04-19 20:06  波罗斯の程序日记  阅读(329)  评论(0编辑  收藏  举报