50 道 Python 基础语法面试题大揭秘

必看!50道Python基础语法面试题大揭秘

一、变量与数据类型

1. 变量命名规则

Python 中变量命名可不能乱来。它得由字母、数字和下划线组成,而且不能以数字开头,还不能和 Python 的关键字撞名,像 iffor 这些就是关键字。为啥要有这些规则呢?其实是为了让代码看起来规范,大家都按这个标准写,阅读和维护起来就轻松多啦。

2. 数据类型有哪些

50 道 Python 基础语法面试题大揭秘

Python 里的数据类型挺丰富的。像整数(int),比如 5;浮点数(float),像 3.14;字符串(str),“Hello World”就是字符串;布尔值(bool),只有 TrueFalse 俩值;还有列表(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 函数,它接受两个参数 ab,返回它们的和。然后调用函数,把 35 传进去,得到结果并打印。函数能把一段代码封装起来,提高代码的复用性,以后要做加法就直接调用这个函数。

2. 函数参数

函数参数有位置参数,像上面 add 函数里的 ab,调用时按顺序传值。还有默认参数,比如:

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 文件的目录,里面可以有多个模块。包能更好地组织模块,避免命名冲突。比如一个项目里,不同功能的模块可以放到不同的包里。

七、常见面试题示例

  1. 如何交换两个变量的值,不用中间变量?

    a = 5
    b = 10
    a, b = b, a
    print(a, b)

    利用 Python 的元组解包特性就可以轻松实现。

  2. 写一个函数,判断一个数是否为质数。

    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 基础语法有了更清晰的认识,面试的时候也能更胸有成竹啦。

温馨提示:本站提供的一切软件、教程和内容信息都来自网络收集整理,仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,版权争议与本站无关。用户必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

给TA打赏
共{{data.count}}人
人已打赏
技术文章

Java 代码静态分析工具:SonarQube 实战

2025-8-9 1:32:04

技术文章

网络编程 UDP 面试题全解

2025-8-9 1:35:43

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索