必看!50道Python基础语法面试题大揭秘
一、变量与数据类型
1. 变量命名规则
Python 中变量命名可不能乱来。它得由字母、数字和下划线组成,而且不能以数字开头,还不能和 Python 的关键字撞名,像 if
、for
这些就是关键字。为啥要有这些规则呢?其实是为了让代码看起来规范,大家都按这个标准写,阅读和维护起来就轻松多啦。
2. 数据类型有哪些

Python 里的数据类型挺丰富的。像整数(int
),比如 5
;浮点数(float
),像 3.14
;字符串(str
),“Hello World”就是字符串;布尔值(bool
),只有 True
和 False
俩值;还有列表(list
),[1, 2, 3]
这种;元组(tuple
),(1, 'a')
这样;集合(set
),{1, 2, 3}
;字典(dict
),{'name': 'Tom', 'age': 18}
。不同的数据类型用途不一样,比如列表适合存一组可变的数据,元组适合存一组不可变的数据。
二、运算符与表达式
1. 算术运算符
加(+
)、减(-
)、乘(*
)、除(/
)这些大家都熟悉。但还有取模(%
),就是求余数,比如 7 % 3
结果是 1
。还有整除(//
),7 // 3
结果是 2
,它只取整数部分。这些运算符在处理数值计算的时候经常用到,像计算商品打折后的价格就可能会用到。
2. 比较运算符
比较运算符用来比较两个值,像大于(>
)、小于(<
)、等于(==
)、不等于(!=
)等。它们返回的结果是布尔值。比如 3 > 2
就是 True
。在写条件判断的时候,这些运算符可就派上大用场啦,像判断用户输入的年龄是否符合要求。
三、条件语句
1. if - else 语句
if - else
语句用来根据条件执行不同的代码块。比如:
age = 18
if age >= 18:
print("你成年了")
else:
print("你未成年")
先判断 age
是否大于等于 18,满足条件就执行 if
后面的代码块,不满足就执行 else
后面的。在实际编程里,判断用户权限、订单状态啥的都会用到。
2. if - elif - else 语句
当有多个条件需要判断时,就用 if - elif - else
。比如判断成绩等级:
score = 85
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
它会从上到下依次判断条件,满足哪个就执行对应的代码块,后面的就不判断了。
四、循环语句
1. for 循环
for
循环常用来遍历可迭代对象,像列表、字符串。比如遍历列表:
nums = [1, 2, 3]
for num in nums:
print(num)
这里会依次取出 nums
里的元素并打印。在处理需要重复执行的任务,比如计算列表里所有数的和,就很方便。
2. while 循环
while
循环只要条件为真就会一直执行。比如:
i = 0
while i < 5:
print(i)
i += 1
这里 i
小于 5 时就会一直打印 i
,并且每次循环 i
加 1,直到 i
不小于 5 才停止。可以用来实现一些不定次数的循环任务,像等待用户输入正确的密码。
五、函数
1. 函数定义与调用
定义函数得用 def
关键字。比如:
def add(a, b):
return a + b
result = add(3, 5)
print(result)
先定义了 add
函数,它接受两个参数 a
和 b
,返回它们的和。然后调用函数,把 3
和 5
传进去,得到结果并打印。函数能把一段代码封装起来,提高代码的复用性,以后要做加法就直接调用这个函数。
2. 函数参数
函数参数有位置参数,像上面 add
函数里的 a
和 b
,调用时按顺序传值。还有默认参数,比如:
def greet(name, msg = "你好"):
print(f"{msg}, {name}")
greet("Tom")
greet("Jerry", "哈喽")
msg
就是默认参数,不传值就用默认的 “你好”,传了就用传的值。这样可以让函数使用起来更灵活。
六、模块与包
1. 模块的导入与使用
Python 里可以把相关的代码放到一个 .py
文件里,这就是模块。比如有个 math_operations.py
文件,里面定义了一些数学运算函数。在另一个文件里可以这样导入使用:
import math_operations
result = math_operations.add(2, 3)
或者用 from...import
方式:
from math_operations import add
result = add(2, 3)
模块能把代码模块化,方便管理和复用。
2. 包的概念
包是一个包含 __init__.py
文件的目录,里面可以有多个模块。包能更好地组织模块,避免命名冲突。比如一个项目里,不同功能的模块可以放到不同的包里。
七、常见面试题示例
-
如何交换两个变量的值,不用中间变量?
a = 5 b = 10 a, b = b, a print(a, b)
利用 Python 的元组解包特性就可以轻松实现。
-
写一个函数,判断一个数是否为质数。
def is_prime(num): if num <= 1: return False for i in range(2, num): if num % i == 0: return False return True
先排除小于等于 1 的数,然后从 2 到这个数减 1 遍历,如果能整除就不是质数,都不能整除就是质数。
通过对这 50 道 Python 基础语法面试题相关内容的揭秘,相信大家对 Python 基础语法有了更清晰的认识,面试的时候也能更胸有成竹啦。
还没有评论,来说两句吧...