logo

Python 基础入门:环境准备、核心语法与列表操作实践

作者:快去debug2026.11.07 01:14浏览量:0

简介:本文面向初次接触 Python 的开发者,从解释器安装、编辑环境准备到第一个可运行练习进行系统梳理。文章重点讲解变量、常量、字符串处理方法、算术运算、列表操作、循环与列表推导式等基础语法,并结合可直接执行的代码示例,帮助读者快速建立对 Python 程序结构的整体认知,减少入门阶段的试错成本。

一、开始前的准备:安装解释器与编写环境

Python 程序需要由解释器执行,因此学习的第一步是安装 Python 解释器。目前主流的 Python 3 版本已经能够满足绝大多数学习与开发需求。安装完成后,可以在终端或命令行中输入:

  1. python --version

如果能够看到类似 Python 3.x.x 的输出,说明解释器已经可以使用。

对于日常练习,可以选择任意一款支持 Python 语法的编辑器或集成开发环境。编辑器的作用是辅助编写代码、提供语法高亮和自动缩进,但真正执行程序仍然依赖本机安装的 Python 解释器。初学者不必过度纠结工具选择,先保证能够便捷地创建 .py 文件并运行即可。

第一个练习通常可以从输出一句话开始:

  1. print("Hello, Python!")

执行后看到控制台输出内容,就说明编辑、保存、运行这一基本流程已经打通。


二、变量与常量:存储数据的基本方式

1. 变量的命名规则

变量用于存储程序运行过程中的数据。Python 对变量命名有以下约定:

  • 变量名只能由字母、数字和下划线组成;
  • 不能以数字开头;
  • 不建议使用 Python 关键字和内置函数名作为变量名;
  • 建议统一使用小写字母,多个单词之间用下划线连接,例如 user_name。

合法变量名示例:

  1. age = 18
  2. user_name = "Alice"
  3. total_score = 95.5

不合法或不建议的示例:

  1. 2name = "Bob" # 不能以数字开头
  2. class = "math" # class 是关键字,不应作为变量名
  3. print = "hello" # print 是内置函数名,覆盖后会影响调用

需要特别注意的是,Python 变量名是大小写敏感的,Name 与 name 表示两个不同变量。

2. 常量的约定写法

Python 本身没有真正意义上的常量机制,也就是说,程序运行期间不能强制阻止某个变量被重新赋值。但开发社区普遍采用“全大写变量名”表示常量,用来提示其他开发者不要修改该值。

  1. MAX_RETRY_TIMES = 3
  2. DEFAULT_TIMEOUT = 30

这种约定能够提升代码可读性,但并不会让变量变为只读。真正需要不可变语义时,应通过设计或封装来限制修改行为。


三、字符串:文本数据的核心表示形式

1. 字符串的定义方式

字符串可以使用单引号或双引号定义。当文本内容中包含引号时,可以灵活选择另一种引号避免冲突。

  1. s1 = "It's my book"
  2. s2 = 'He said "hello"'

两种写法在功能上等价,主要目的是减少转义需要,提高可读性。

2. 常见转义字符

转义字符用于表示无法直接输入或具有特殊含义的字符。常用转义包括:

  • \n:换行;
  • \t:制表符;
  • \\:反斜杠本身;
  • \":双引号;
  • \':单引号。

示例:

  1. print("第一行\n第二行")
  2. print("姓名\t分数")

输出中会看到对应位置发生换行或制表对齐。

3. raw 字符串:屏蔽转义

当字符串中包含大量 Windows 路径或正则表达式时,频繁转义会降低可读性。此时可以在字符串前添加 r,表示原始字符串。

  1. path = r"d:\python_work"
  2. print(path)

r 前缀会屏蔽大部分转义处理,让字符串尽量保持原样输出。

4. f-string:格式化输出

f 前缀用于创建格式化字符串,字符串内部可以使用花括号引用变量或表达式。

  1. name = "Alice"
  2. age = 20
  3. print(f"My name is {name}, and I am {age} years old.")

这种方式比传统的字符串拼接更直观,也更容易维护。

5. 字符串常用处理方法

字符串属于不可变对象,调用方法通常会返回新字符串,而不会修改原值。常用方法包括:

  • upper():转换为大写;
  • lower():转换为小写;
  • title():每个单词首字母大写;
  • lstrip():去除左侧空白;
  • rstrip():去除右侧空白;
  • strip():去除两侧空白;
  • removeprefix():去除开头指定内容;
  • removesuffix():去除结尾指定内容。

示例:

  1. text = " Hello Python "
  2. print(text.upper())
  3. print(text.strip())
  4. print(text.removesuffix(" "))

通过 dir(str) 可以查看字符串类型支持的全部方法,便于按需查阅。


四、注释:让代码更容易理解

注释是写给开发者看的说明文字,Python 解释器会忽略注释内容。单行注释使用 #:

  1. # 计算总分
  2. total = math + english

注释应当解释“为什么这样做”,而不是简单重复代码“做了什么”。适量、清晰的注释有助于后续维护和团队协作。


五、算术运算与数值表示

1. 基本算术运算符

Python 支持的算术运算包括:

  • +:加法;
  • -:减法;
  • *:乘法;
  • /:除法,结果为浮点数;
  • //:整除,向下取整;
  • %:取余;
  • **:乘方。

示例:

  1. print(7 / 2) # 3.5
  2. print(7 // 2) # 3
  3. print(7 % 2) # 1
  4. print(2 ** 3) # 8

2. 数值中的下划线

Python 允许在数值字面量中使用下划线,以提升大数字的可读性。下划线不会影响数值大小。

  1. big_number = 3_141_592_653
  2. print(big_number)

这种方式适合表示金额、数量、科学计数等较长数字。


六、多变量赋值与列表基础

1. 同时为多个变量赋值

Python 支持在一行中为多个变量分别赋值:

  1. a, b, c = 2, 9, "hello"
  2. print(a, b, c)

这种方式可以简化初始化过程,但需要注意左右两侧数量一致。

2. 创建与访问列表

列表是 Python 中最常用的序列结构之一,使用方括号定义:

  1. my_list = []
  2. numbers = [0, 1, 2]

列表支持索引访问,负数索引表示从右侧开始计数:

  1. print(numbers[-1]) # 2
  2. print(numbers[-2]) # 1

3. 添加元素

append() 用于在列表末尾追加元素:

  1. numbers.append("aa")
  2. print(numbers) # [0, 1, 2, 'aa']

insert() 可以在指定位置插入元素:

  1. numbers.insert(0, "XX")
  2. print(numbers) # ['XX', 0, 1, 2, 'aa']

4. 删除元素

del 语句可以按索引删除元素:

  1. del numbers[2]
  2. print(numbers)

pop() 会移除并返回列表最后一个元素,也可以传入索引参数:

  1. last = numbers.pop()
  2. print(last)
  3. print(numbers)

remove() 按值删除列表中第一个匹配项:

  1. numbers.remove(0)
  2. print(numbers)

三种删除方式适用场景不同:按位置删除使用 del,需要获取被删除元素时使用 pop(),按值删除使用 remove()。


七、列表排序与统计操作

1. 临时排序与永久排序

sorted() 返回排序后的新列表,不改变原列表:

  1. names = ["cc", "bb", "dd", "aa"]
  2. tmp = sorted(names)
  3. print(tmp)
  4. print(names)

sort() 直接对原列表进行排序:

  1. names.sort()
  2. print(names)

reverse() 用于倒序排列:

  1. names.reverse()
  2. print(names)

需要区分:sorted() 是函数,返回新对象;sort() 是列表方法,原地修改列表。

2. 数值统计函数

对于数值列表,可以使用以下内置函数:

  • max():返回最大值;
  • min():返回最小值;
  • sum():返回总和。

示例:

  1. scores = [88, 92, 79, 95]
  2. print(max(scores))
  3. print(min(scores))
  4. print(sum(scores))

八、循环遍历与 range 函数

1. 遍历列表

for 循环可以依次取出列表中的每个元素:

  1. for name in names:
  2. print(name)

2. 使用 range 生成数字序列

range() 常用于生成一组数字,其参数格式为:

  1. range(start, stop, step)

其中 start 是起始值,stop 是不包含的终止值,step 是步进值。步进值可以为负数,实现逆序生成。

  1. for n in range(0, 5, 1):
  2. print(n)
  3. # 输出 0 1 2 3 4
  4. for n in range(5, 0, -1):
  5. print(n)
  6. # 输出 5 4 3 2 1

range() 生成的是惰性序列,需要时可以转换为列表:

  1. numbers = list(range(0, 10, 2))
  2. print(numbers)

九、列表推导式:简洁构建列表

列表推导式可以在单行表达式中根据已有序列生成新列表,语法结构为:

  1. [表达式 for 元素 in 可迭代对象]

示例:

  1. squares = [n * 2 for n in range(0, 5)]
  2. print(squares) # [0, 2, 4, 6, 8]

推导式也可以增加条件判断,实现筛选:

  1. even_numbers = [n for n in range(10) if n % 2 == 0]
  2. print(even_numbers)

列表推导式能够显著减少循环代码量,但逻辑过于复杂时不建议强行写成单行,以免牺牲可读性。


十、入门练习建议

完成以上基础语法学习后,可以尝试将多个知识点组合成一个小练习。例如:

  1. names = ["alice", "bob", "charlie"]
  2. formatted_names = [name.title() for name in names]
  3. print(formatted_names)
  4. scores = [78, 85, 92, 88]
  5. print(f"最高分:{max(scores)}")
  6. print(f"最低分:{min(scores)}")
  7. print(f"平均分:{sum(scores) / len(scores):.2f}")

练习重点不在于一次写出复杂程序,而是熟悉变量、字符串方法、列表操作、循环和推导式之间的配合方式。只有先把基础语法跑通,后续学习函数、类、模块、异常处理和实际业务开发时才会更加顺畅。

发表评论

活动