作为Python小白,刚入门时最容易在语法细节上踩坑。今天我们就通过10道经典基础题,把Python最核心的语法知识点彻底讲透,帮你一次搞懂、不再混淆。
一、Python缩进:代码的“骨架”
题目回顾
以下关于Python缩进的描述,正确的是? A. Python不采用缩进表示程序框架 B. Python的缩进可以随意设置,没有严格要求 C. Python采用严格的缩进来表明程序框架 D. Python中只有函数定义需要缩进
正确答案:C
知识点解析
Python和C、Java等语言最大的区别之一,就是用缩进代替大括号 {} 来划分代码块,这是Python语法的核心规则:
- 缩进是Python的语法要求,不是可选的格式美化。如果缩进错误,代码会直接报错无法运行。
- 同一代码块的缩进必须完全一致,通常约定使用4个空格(或1个Tab,不可混用),不能随意设置。
- 不仅函数定义, if 判断、 for/while 循环、类定义等所有代码块,都需要缩进。
举个例子,正确的缩进格式:
python
正确:if代码块缩进4个空格
if age >= 18: print("成年") print("可以进入")
错误的缩进会直接报错:
python
错误:缩进不一致
if age >= 18: print("成年") print("可以进入")
二、Python注释:给代码写“说明书”
题目回顾
以下哪个符号用于Python中的注释? A. // B. # C. /* ... */ D. '
正确答案:B
知识点解析
注释是写给人看的说明文字,Python解释器会直接忽略注释内容,不会执行。不同语言的注释符号不同,Python的规则非常简单:
- 单行注释:用 # 开头,从 # 到行尾的内容都是注释,是Python最常用的注释方式。 python
这是单行注释,不会被执行
print("Hello Python") # 行尾也可以加注释
- 多行注释:Python没有专门的多行注释符号,通常用三个单引号 ''' 或三个双引号 """ 包裹内容来实现(本质是字符串,不赋值就不会执行)。 python
''' 这是多行注释 可以写多行说明 '''
- 其他选项说明:
- // 是C++、Java的单行注释,Python中是整除运算符;
- /* ... */ 是C、Java的多行注释,Python不支持;
- ' 是Python的字符串定界符,不是注释。
三、Python变量:无需声明,直接赋值
题目回顾
在Python中,哪个关键字用于声明变量? A. var B. let C. const D. 不需要关键字
正确答案:D
知识点解析
Python是动态类型语言,和JavaScript、Java等静态语言完全不同:
- 静态语言(如Java)需要用 var / let / int 等关键字声明变量的类型;
- Python不需要任何声明关键字,直接给变量赋值,就完成了变量的创建。
举个例子:
python
直接赋值,自动识别类型
name = "小明" # 字符串类型 age = 18 # 整数类型 height = 1.75 # 浮点数类型
- 变量的类型由赋值的内容决定,还可以随时修改: python
a = 10 # a是整数 a = "你好" # a变成字符串,Python完全支持
- 其他选项都是其他语言的关键字,Python中不存在这些声明语法。
四、Python循环:两种核心循环
题目回顾
在Python中,循环语句包括哪些? A. for B. while C. do-while D. repeat-until
正确答案:A、B
知识点解析
Python只提供两种原生循环语句,覆盖所有循环场景:
1. for 循环:用于遍历可迭代对象(列表、字符串、元组、字典等),是Python最常用的循环。 python
遍历列表
fruits = ["苹果", "香蕉", "橙子"] for fruit in fruits: print(fruit) 2. while 循环:根据条件判断循环,条件为 True 时持续执行,适合不确定循环次数的场景。 python
计数循环
count = 0 while count < 5: print(count) count += 1
- 其他选项说明:
- do-while 是C、Java的循环(先执行一次再判断条件),Python没有原生支持,可通过 while True + break 模拟;
- repeat-until 是Pascal等语言的循环,Python不支持。
五、自定义模块:自己写的Python文件
题目回顾
自定义模块是什么? A. 用户自己编写的Python文件 B. Python自带的库 C. 第三方库 D. 系统模块
正确答案:A
知识点解析
模块是Python代码的“封装单元”,本质就是一个 .py 文件,用来把相关的函数、类、变量打包,方便复用:
- 自定义模块:就是你自己写的 .py 文件,比如你写了一个 my_tool.py ,里面封装了常用函数,这就是自定义模块。 python
my_tool.py(自定义模块)
def add(a, b): return a + b
在其他文件中直接导入使用: python
import my_tool print(my_tool.add(1, 2)) # 输出3
- 其他选项说明:
- Python自带的库叫标准库(如 os 、 math );
- 第三方库是其他开发者写的、需要安装的库(如 requests 、 pandas );
- 系统模块一般指和操作系统交互的内置模块,不属于自定义。
六、第三方模块安装:pip是标准工具
题目回顾
在Python中,如何安装第三方模块? A. pip install 模块名 B. apt-get install 模块名 C. yum install 模块名 D. npm install 模块名
正确答案:A
知识点解析
pip 是Python官方的包管理工具,是安装第三方模块的唯一标准方式:
- 基本命令: pip install 模块名 ,比如安装网络请求库 requests : bash
pip install requests
- 常用补充命令: bash
pip list # 查看已安装的所有模块 pip uninstall 模块名 # 卸载模块 pip install --upgrade pip # 升级pip
- 其他选项说明:
- apt-get / yum 是Linux系统的包管理器,用来安装系统软件,不是Python模块;
- npm 是Node.js的包管理器,和Python完全无关。
七、类的定义:class关键字
题目回顾
在Python中,如何定义一个类? A. define class 类名: B. class 类名: C. type 类名: D. new class 类名:
正确答案:B
知识点解析
类是Python面向对象编程的核心,用 class 关键字定义,语法非常简洁:
python
定义一个Person类
class Person: # 类的属性和方法 def init(self, name, age): self.name = name self.age = age
def say_hello(self):
print(f"你好,我是{self.name}")
创建类的实例
p = Person("小明", 18) p.say_hello() # 输出:你好,我是小明
- 类名通常采用大驼峰命名法(首字母大写),方便区分;
- 类定义后,通过 类名() 创建实例,就可以使用类中定义的属性和方法;
- 其他选项都不是Python定义类的语法,仅B正确。
八、魔术方法:双下划线包裹的特殊方法
题目回顾
Python中的魔术方法是什么? A. 特殊方法,以双下划线开头和结尾 B. 用户自定义的普通方法 C. 内置函数 D. 类属性
正确答案:A
知识点解析
魔术方法(也叫特殊方法、魔法方法)是Python中预定义的、以双下划线 __ 开头和结尾的方法,它们会在特定场景下自动调用,不需要手动执行:
- 最常见的魔术方法: init (构造方法,创建对象时自动调用)、 str (打印对象时自动调用,返回对象的字符串表示)、 len (调用 len() 函数时自动调用)。 python
class Person: def init(self, name): # 创建对象时自动调用 self.name = name
def __str__(self): # 打印对象时自动调用
return f"Person对象,姓名:{self.name}"
p = Person("小明") print(p) # 自动调用__str__,输出:Person对象,姓名:小明
- 其他选项说明:
- 普通方法是用户自定义的、需要手动调用的方法,不是魔术方法;
- 内置函数是Python全局函数(如 print() 、 len() ),不是类中的方法;
- 类属性是类中定义的变量,和方法无关。
九、__init__方法:类的构造函数
题目回顾
init 方法是什么? A. 类的构造函数 B. 类的析构函数 C. 普通方法 D. 静态方法
正确答案:A
知识点解析
init 是Python中最常用的魔术方法,是类的构造函数,作用是初始化对象的属性:
- 当你创建类的实例时, init 方法会自动执行,用来给对象的属性赋值,完成对象的初始化。
- 语法规则:第一个参数必须是 self ,代表当前创建的对象本身,后面可以自定义参数。 python
class Person: # 构造方法:初始化name和age属性 def init(self, name, age): self.name = name # 给对象的name属性赋值 self.age = age # 给对象的age属性赋值
创建对象时,自动调用__init__,传入name和age
p = Person("小明", 18) print(p.name) # 输出:小明
- 其他选项说明:
- 析构函数是 del 方法,对象被销毁时自动调用,用于清理资源;
- 普通方法需要手动调用, init 是自动执行的特殊方法;
- 静态方法用 @staticmethod 装饰,不需要 self 参数,和 init 完全不同。
十、函数定义:def关键字
题目回顾
在Python里面使用哪个关键字定义函数?
正确答案: def
知识点解析
函数是封装可复用代码的单元,Python中用 def 关键字定义函数,语法格式:
python
def 函数名(参数1, 参数2, ...): # 函数体(缩进4个空格) return 返回值 # 可选,没有return默认返回None
举个例子:
python
定义一个加法函数
def add(a, b): return a + b
调用函数
result = add(1, 2) print(result) # 输出3
- 函数名采用小写下划线命名法(如 get_user_info ),见名知意;
- 参数可以有多个,也可以没有(空括号);
- return 用来返回函数的执行结果,没有 return 的函数会返回 None 。
总结:Python入门核心知识点清单
这10道题覆盖了Python入门最核心的语法,帮你梳理成速记清单:
知识点 核心规则 缩进 用4个空格划分代码块,严格要求,不可随意 注释 单行用 # ,多行用 ''' / """ 变量 无需声明,直接赋值,动态类型 循环 for 遍历、 while 条件判断,无 do-while 模块 自定义模块是自己写的 .py 文件 第三方库安装 pip install 模块名 类定义 class 类名: 魔术方法 双下划线开头结尾,自动调用 init 类的构造函数,初始化对象属性 函数定义 def 函数名(参数):
给小白的学习建议
1. 动手实践:语法看懂不算会,一定要把每个例子敲一遍,运行看效果,踩坑才能真正理解; 2. 规范编码:从入门就养成好习惯,用4个空格缩进、规范命名、写注释,避免后期返工; 3. 循序渐进:先吃透这些基础语法,再学习面向对象、文件操作、第三方库等进阶内容,不要急于求成。