Python 编程基础
前面已经准备好了 Python 和 PyCharm。接下来,我们要编写一个简单的学习信息卡:让用户输入姓名和正在学习的课程,再把信息显示出来。
要完成这个小程序,需要先掌握 5 个基础知识:
- 使用
print()输出内容 - 使用变量保存数据
- 使用
input()接收输入 - 使用注释说明代码
- 使用统一的规则命名和排版
输入、输出与变量
任何软件系统本质上都是一台“数据加工机”:接收外部数据输入(Input),在计算机内部进行运算和暂存(Process),最终向用户呈现处理结果(Output)。这就是经典的 IPO 模型(Input-Process-Output)。
在 Python 编程中,这三大核心环节分别对应了最基础的语法元件:input() 负责捕获输入,变量与内存负责加工暂存,print() 负责输出结果。
print () 输出
程序处理完数据后,通常需要把结果显示出来。Python 使用 print() 输出内容。
新建 coding_basics.py,输入下面的代码:
print("欢迎学习 Python 核心编程")运行后会看到:
欢迎学习 Python 核心编程引号中的内容会原样显示。字符串的具体写法会在后面的章节中讲解,这里先会用即可。
一次输出多个内容
print() 可以一次接收多个内容,内容之间默认使用空格分隔:
print("课程:", "Python 核心编程")
print("阶段:", "编程基础")运行结果:
课程:Python 核心编程
阶段:编程基础设置分隔符和结束内容
通过 sep 可以修改多个内容之间的分隔符:
print("2026", "09", "11", sep="-")运行结果:
2026-09-11print() 默认在输出结束后换行。通过 end 可以修改结束内容:
print("正在学习", end=":")
print("Python")运行结果:
正在学习:Pythonprint() 的完整形式如下:
print(*objects, sep=" ", end="\n", file=None, flush=False)| 参数 | 作用 |
|---|---|
objects | 要输出的一个或多个内容 |
sep | 多个内容之间的分隔符,默认是空格 |
end | 输出结束时添加的内容,默认是换行符 \n |
file | 输出位置,默认是当前终端 |
flush | 是否立即刷新输出,默认是 False |
当前阶段重点掌握 objects、sep 和 end。另外两个参数以后用到时再学习。
变量与赋值
如果同一个内容会被多次使用,可以先给它起一个名字。这个名字就是变量。
course_name = "Python 核心编程"
print(course_name)
print("正在学习:", course_name)= 表示赋值,可以读作“把右边的值交给左边的变量”:
变量名 = 值上面的代码把文本 Python 核心编程 赋值给 course_name。后面写 course_name,就可以取得这个值。
赋值不是判断相等
这里的 = 表示赋值。判断两个值是否相等会使用 ==,后面的运算符章节会专门讲解。
修改变量的值
变量保存的值可以重新赋值:
study_status = "准备学习"
print(study_status)
study_status = "正在学习"
print(study_status)运行结果:
准备学习
正在学习代码从上到下执行。第二次赋值后,study_status 对应的是新值。
先赋值,再使用
变量必须先赋值才能使用。下面的代码会出现 NameError:
print(student_name)
student_name = "小明"Python 执行第一行时,还不知道 student_name 是什么。
input () 输入
固定输出只能显示程序提前写好的内容。如果希望不同学生输入自己的姓名,就要使用 input()。
input() 会先显示提示文字,然后暂停程序,等待用户输入。用户按下回车后,程序才会继续执行。
student_name = input("请输入你的姓名:")
print("你好,", student_name)一次运行过程可能是:
请输入你的姓名:小明
你好,小明这段代码分为两步:
input()接收用户输入,并把结果赋值给student_nameprint()读取变量中的内容并输出
input () 得到的是字符串
无论用户输入字母还是数字,input() 返回的都是字符串,也就是 str。
content = input("请输入内容:")
print(type(content))输入 123,仍然会看到:
<class 'str'>字符串和数据类型转换会在后续章节中继续讲解。
代码注释
注释是写给人看的说明,Python 不会把它当成程序执行。
单行注释
Python 注释以 # 开头,从 # 到这一行末尾的内容都是注释。
# 接收学生姓名
student_name = input("请输入你的姓名:")
# 显示欢迎信息
print("你好,", student_name)按照常用规范,# 后面留一个空格,再写注释内容。
行尾注释
注释也可以写在代码后面:
course_name = "Python 核心编程" # 当前课程名称代码和行尾注释之间建议至少保留两个空格。行尾注释不要写得太长,也不要重复代码已经表达清楚的内容。
多行说明
Python 没有单独的多行注释符号。需要写多行注释时,每一行都使用 #:
# 学习信息卡包含姓名和课程名称。
# 后面还会继续增加学习阶段和完成进度。
student_name = "小明"
course_name = "Python 核心编程"有时会看到使用三个引号包围多行文字:
"""学习信息卡模块。
用于记录和显示学生的学习信息。
"""它本质上是一个多行字符串。放在模块、函数或类的特定位置时,可以作为文档字符串,也叫 docstring。当前阶段不要把三个引号简单理解为“多行注释”。
注释要解释原因和目的
代码已经很清楚时,不需要逐行翻译。修改代码后,也要同步更新相关注释,避免说明和实际代码不一致。
标识符与命名规范
标识符规则
变量、函数和类等由开发者起的名字,统称为标识符。student_name 就是一个标识符。
Python 标识符需要遵守下面的规则:
- 由字母、数字和下划线
_组成 - 不能以数字开头
- 不能使用
if、for、class等 Python 关键字 - 区分大小写,
name和Name是两个不同的名字
| 名称 | 是否可用 | 原因 |
|---|---|---|
student_name | 可以 | 符合规则,含义清楚 |
_score | 可以 | 可以以下划线开头 |
name2 | 可以 | 数字不在开头 |
2name | 不可以 | 以数字开头 |
student-name | 不可以 | 包含短横线 - |
class | 不可以 | 使用了 Python 关键字 |
Python 也允许部分非英文字符作为标识符,但为了方便输入、协作和跨平台使用,课程中的变量名统一使用有含义的英文单词。
Python 命名风格
只满足语法规则还不够,名字还应该容易理解,并且保持统一风格。
下划线命名法
所有字母小写,单词之间使用下划线连接:
student_name = "小明"
course_name = "Python 核心编程"Python 的变量名和函数名通常使用这种方式,也叫 snake_case。
大驼峰命名法
每个单词的首字母大写:
StudentInfo
CourseManagerPython 的类名通常使用这种方式,也叫 PascalCase 或 CapWords。类会在面向对象章节中学习。
小驼峰命名法
第一个单词首字母小写,后续单词首字母大写:
studentName
courseManager这种方式在其他编程语言中很常见,也叫 camelCase。Python 项目中的变量名通常优先使用下划线命名法。

见名知意
student_name 比 a 更容易理解。除循环计数等简单场景外,尽量不要使用没有含义的单字母名称,也不要使用容易和数字混淆的 l、O、I。
代码风格与自动格式化
PEP 是 Python Enhancement Proposal 的缩写,可以理解为 Python 的改进提案。PEP 8 专门介绍 Python 代码风格。
当前阶段先养成下面几个习惯:
- 缩进统一使用 4 个空格,不要混用 Tab 和空格
- 赋值符号两边各留一个空格
- 变量名使用有含义的英文和下划线命名法
#后留一个空格,行尾注释前保留两个空格- 一条语句通常单独占一行,不把多条语句挤在一起
下面的代码可以运行,但不容易阅读:
name = "小明";course = "Python"
print(name, course)整理后更清楚:
student_name = "小明"
course_name = "Python"
print(student_name, course_name)为什么两段代码运行结果完全相同,我们却必须严格保持格式规范?因为 计算机不在乎排版,但人类的大脑极度依赖视觉结构。代码首先是写给人看的,只是顺便让计算机执行。
放到真实的团队协作与软件工程生命周期中,统一的代码风格更是消灭沟通摩擦的“行业普通话”:
在 PyCharm 中,你不需要每次都手动敲空格对齐。可以通过 Code | Reformat Code 自动格式化代码。Windows 和 Linux 的常用快捷键是 Ctrl + Alt + L。
格式化不能修复所有问题
自动格式化可以调整空格、缩进和换行,但不能替你起好变量名,也不能修复代码逻辑。格式化后仍然要自己检查代码。
规范的完整内容可以参考:
综合案例:学习信息卡
现在把输入、变量、输出和注释组合起来:
# 接收学生输入的信息
student_name = input("请输入你的姓名:")
course_name = input("请输入正在学习的课程:")
# 输出学习信息卡
print("-" * 20)
print("学习信息卡")
print("姓名:", student_name)
print("课程:", course_name)
print("学习状态:正在学习")
print("-" * 20)一次运行结果可能是:
请输入你的姓名:小明
请输入正在学习的课程:Python 核心编程
--------------------
学习信息卡
姓名:小明
课程:Python 核心编程
学习状态:正在学习
--------------------这一版程序已经能够根据用户输入显示不同内容。暂时不需要理解 "-" * 20 的完整原理,它的作用是生成 20 个短横线;后面的字符串和运算符章节会继续讲解这种写法。
小结
本节课最核心的是掌握 5 件事:
print()负责输出,input()负责接收输入input()得到的内容是字符串- 变量要先赋值再使用,
=表示赋值 - Python 注释使用
#,三个引号本质上是字符串 - 变量名优先使用见名知意的下划线命名法,并保持统一格式
[zhengxin] path = /home/zhengxin/zhengxin browseable = yes read only = no valid users = zhengxin