本文全程贴合新手需求,摒弃复杂理论,所有知识点都配「代码示例+通俗解析」,同时标注2026年新手必避的坑,看完直接能上手写简单程序,真正做到“一篇吃透Python基础”。
学习Python的第一步,是搭建运行环境,2026年新手优先安装Python 3.14版本(稳定、兼容所有基础库),步骤如下,全程傻瓜式操作,跟着走不踩坑。
访问Python官方下载页(无需科学上网):https://www.python.org/downloads/,根据自己的系统选择对应版本:
Windows:选择「Windows Installer (64-bit)」,建议下载3.14及以上版本(适配2026年最新库);
Mac:选择「macOS 64-bit universal2 installer」,同样优先3.14+版本。
双击安装包,Windows用户必须勾选「Add Python 3.x to PATH」(这是核心,避免后续手动配置环境变量,新手必选);
安装方式:新手直接点击「Install Now」(默认安装到C盘,操作最简单);如果想自定义安装路径,选择「Customize installation」,建议安装到D盘(如D:\Python314),方便后续查找;
等待1-2分钟,提示「Setup was successful」即安装完成。
安装完成后,无需重启电脑,直接验证:
Windows:按下Win+R,输入「cmd」打开命令提示符,输入「python --version」,如果显示「Python 3.14.x」(x为具体版本号),说明安装成功;
Mac:打开「终端」,输入「python3 --version」,显示版本号即成功(Mac自带Python 2.x,需用python3区分)。
安装完Python后,需要一个编辑器写代码,新手优先选这两个,简单易上手:
IDLE:Python自带的编辑器,无需额外安装,打开就能写代码,适合刚入门练手;
VS Code:免费、轻量,安装「Python」插件后,语法提示、报错提醒很贴心,后续写复杂代码也能用到,推荐新手直接上手VS Code。
避坑提示:2026年不要安装Python 2.x版本,已经停止更新,很多新库不兼容,新手从3.x开始学,避免后期返工。
这部分是Python的“基本功”,所有后续学习都基于此,不用死记硬背,理解逻辑+多敲代码,就能掌握。每个知识点都配代码示例,复制到编辑器就能运行。
新手入门第一步,先写一个简单的程序,感受Python的简洁:
# 这是单行注释,用来解释代码(Python解释器会忽略注释)
print("Hello Python 2026!") # 输出语句,向控制台打印内容
解析:
「#」后面的内容是注释,写给人看的,方便自己和他人理解代码,不参与程序运行;
print()是Python的内置输出函数,括号里的内容会被打印到控制台;
运行结果:控制台会显示「Hello Python 2026!」,恭喜你,成功写出第一个Python程序!
变量就像一个“盒子”,用来存储数据(比如数字、文字),后续可以直接调用这个“盒子”,不用重复写数据。
只能由字母(a-z/A-Z)、数字(0-9)、下划线(_)组成;
首字符不能是数字(比如2age是错误的);
区分大小写(比如userName和username是两个不同的变量);
不能用Python关键字(比如if、for、print,这些是Python自带的“功能词”)。
# 合法命名(推荐:下划线命名法,新手易读)
user_name = "小明"# 存储姓名,字符串类型
user_age = 20# 存储年龄,整数类型
is_student = True# 存储是否为学生,布尔类型(只有True/False两个值)
# 非法命名(新手避坑,写了会报错)
# 2age = 20 # 错误:首字符不能是数字
# user-name = "小红" # 错误:含非法字符“-”
# if = 10 # 错误:使用了Python关键字“if”
小提示:变量名尽量“见名知意”,比如用user_age代表用户年龄,后续看代码时能快速理解含义,不用猜。
注释是给人看的说明文字,Python解释器会忽略它,写注释能让代码更易读,尤其是后续自己回头看,或给别人看的时候。2026年新手推荐两种注释方式:
# 1. 单行注释:用#开头,适合解释单行代码
print("Hello Python") # 行尾也能加注释,解释当前代码的作用
# 2. 多行注释:用三单引号或三双引号包裹,适合解释整个函数或代码块
'''
这是多行注释
可以写很多行说明文字
比如解释这个代码文件的作用
'''
"""
双引号也能写多行注释
功能和单引号完全一样
选一种用就好,不要混用
"""
避坑提示:多行注释(三引号)不能嵌套,嵌套会导致注释提前结束,后续代码被当成字符串报错。
Python有6种常用基础数据类型,对应不同的存储需求,新手要分清“可变”和“不可变”(后续操作很关键,比如有些类型能修改,有些不能)。
# 数据类型示例
# 不可变类型
num1 = 100# int(整数)
num2 = 3.14# float(浮点数)
name = "Python"# str(字符串)
is_true = False# bool(布尔值)
tup = (1, 2, 3) # tuple(元组)
# 可变类型
lst = [1, 2, 3] # list(列表)
dic = {"name": "小明", "age": 20} # dict(字典)
s = {1, 2, 3, 3} # set(集合,自动去重)
# 不可变类型尝试修改(报错)
# name[0] = "p" # 报错:字符串不能直接修改
# tup[0] = 0 # 报错:元组不能修改
# 可变类型修改(合法)
lst.append(4) # 列表添加元素 → [1,2,3,4]
dic["gender"] = "男"# 字典新增键值对 → {"name":"小明","age":20,"gender":"男"}
避坑提示:空集合不能用{}创建({}默认是字典),空集合必须用set()创建,比如s = set()。
输入函数(input())和输出函数(print())是实现“用户输入数据”和“程序输出结果”的核心,新手必掌握,也是后续写交互程序的基础。
# 一、输出函数 print():向控制台打印内容
print("Hello, 2026 Python新手!") # 直接打印字符串
print(10 + 20) # 打印计算结果 → 30
print("姓名:", name) # 拼接打印 → 姓名:Python
# 二、输入函数 input():接收用户输入(默认是字符串类型)
user_input = input("请输入你的名字:") # 等待用户输入,输入后赋值给user_input
print(f"你好,{user_input}!") # 用f-string拼接,打印输入的内容
# 新手必学:输入转类型(input()默认是字符串,需转成数字才能计算)
age = int(input("请输入你的年龄:")) # 把输入的字符串转成整数
print(f"3年后你{age + 3}岁") # 可以直接参与计算
# 补充:转成浮点数(适合小数输入)
height = float(input("请输入你的身高(米):"))
print(f"你的身高是{height}米")
避坑提示:input()默认返回字符串,若直接用输入的内容做计算,必须转类型(int/float),否则会触发类型错误(比如输入1和2,不转类型会变成字符串拼接,输出“12”)。
运算符是用来做计算、做判断的“工具”,新手重点掌握3类,足够应对基础场景:
流程控制是Python的核心,让程序不再是“从上到下依次执行”,而是能根据条件做选择、重复执行某段代码,新手重点掌握if条件判断和for/while循环。
核心注意:Python用缩进区分代码块,必须统一用4个空格(或1个Tab),不能混用,否则会报错!
逻辑:如果满足A条件,执行A代码;否则满足B条件,执行B代码;都不满足,执行else代码。
# 示例:判断用户输入的年龄,判断是否成年
age = int(input("请输入你的年龄:"))
if age >= 18:
print("你已成年,可以独立使用Python~") # 缩进4个空格,属于if的代码块
elif age >= 12:
print("你是青少年,建议在家长陪同下学习~") # 属于elif的代码块
else:
print("你是小朋友,先好好学习,以后再学Python~") # 属于else的代码块
解析:elif可以有多个(根据需求增加),else是可选的(不是必须有),代码块的缩进必须一致。
for循环常和range()函数搭配,range(n)表示生成0到n-1的整数序列,新手最常用。
# 示例1:循环打印1-5
for i in range(1, 6): # range(1,6)生成1、2、3、4、5(左闭右开)
print(i)
# 示例2:循环遍历列表(依次取出列表中的每个元素)
lst = ["苹果", "香蕉", "橙子"]
for fruit in lst:
print(f"我喜欢吃{fruit}")
# 示例3:循环5次,计算1-5的和
sum_num = 0
for i in range(1, 6):
sum_num = sum_num + i # 每次循环把i加到sum_num中
print(f"1-5的和是:{sum_num}") # 结果:15
while循环:只要满足条件,就一直执行代码块,直到条件不满足为止,新手必记:一定要设置退出条件,否则会无限循环!
# 示例:打印1-5,用while循环
count = 1# 初始值(退出条件的基础)
while count <= 5: # 循环条件:count小于等于5时,执行循环
print(count)
count += 1# 关键:更新count,让count逐渐接近退出条件(否则无限循环)
# 避坑示例(错误写法,无限循环)
# count = 1
# while count <= 5:
# print(count) # 忘记更新count,count一直是1,循环永远不结束
避坑提示:while循环一定要有“更新退出条件”的语句(比如count += 1),否则会陷入无限循环,只能强制关闭编辑器。
函数就像一个“代码模块”,把一段常用的代码封装起来,后续需要用的时候,直接调用函数即可,不用重复写代码,提高效率。新手重点掌握“自定义函数”的基础写法。
def 函数名(参数1, 参数2, ...):
"""函数说明(文档字符串,可选)"""
函数体(要执行的代码)
return 返回值(可选,没有返回值可以省略)
# 示例1:定义一个函数,计算两个数的和
defadd(a, b):
"""计算两个数的和"""
result = a + b
return result # 返回计算结果
# 调用函数(使用函数)
sum_result = add(10, 20) # 传入参数10和20,接收返回值
print(f"10+20的和是:{sum_result}") # 结果:30
# 示例2:定义一个函数,打印问候语(无返回值)
defsay_hello(name):
"""打印问候语"""
print(f"你好,{name}!欢迎学习2026 Python基础~")
# 调用函数
say_hello("小明") # 输出:你好,小明!欢迎学习2026 Python基础~
解析:参数是函数的“输入”,返回值是函数的“输出”,新手可以先从简单的单参数、单返回值函数练起。
学会基础语法后,重点掌握列表、字典、字符串的常用操作,这些是后续写小项目的核心,每个操作都配代码示例,直接复制可用。
s = " Hello Python 2026! "# 原始字符串,前后有空格
# 1. 去空格(最常用)
print(s.strip()) # 去掉前后空格 → "Hello Python 2026!"
print(s.lstrip()) # 去掉左边空格 → "Hello Python 2026! "
print(s.rstrip()) # 去掉右边空格 → " Hello Python 2026!"
# 2. 字符串拼接(两种方式)
s1 = "Hello"
s2 = "World"
print(s1 + " " + s2) # 用+拼接 → "Hello World"(适合少量拼接)
print("-".join([s1, s2])) # 用join拼接 → "Hello-World"(适合大量拼接,更高效)
# 3. 字符串分割(按指定字符分割成列表)
print(s.strip().split(" ")) # 按空格分割 → ["Hello", "Python", "2026!"]
# 4. 字符串替换(替换指定内容)
print(s.replace("Python", "新手")) # 把Python替换成新手 → " Hello 新手 2026! "
# 5. 字符串大小写转换
print(s.upper()) # 全部大写 → " HELLO PYTHON 2026! "
print(s.lower()) # 全部小写 → " hello python 2026! "
小提示:字符串是不可变类型,所有操作都不会修改原字符串,而是返回一个新的字符串。
lst = [1, 2, 3, 4] # 原始列表
# 1. 增(添加元素)
lst.append(5) # 末尾添加 → [1, 2, 3, 4, 5]
lst.insert(1, 6) # 在索引1的位置添加 → [1, 6, 2, 3, 4, 5]
lst.extend([7, 8]) # 追加另一个列表的元素 → [1, 6, 2, 3, 4, 5, 7, 8]
# 2. 删(删除元素)
del lst[1] # 按索引删除 → [1, 2, 3, 4, 5, 7, 8]
lst.pop() # 删除末尾元素,返回删除的值 → 8,列表变成[1, 2, 3, 4, 5, 7]
lst.remove(3) # 按值删除(删除第一个匹配的值) → [1, 2, 4, 5, 7]
# 3. 改(修改元素)
lst[0] = 10# 按索引修改 → [10, 2, 4, 5, 7]
# 4. 查(查找元素)
print(lst[1]) # 按索引查 → 2(索引从0开始)
print(lst[-1]) # 负数索引查(-1是最后一个) → 7
print(2in lst) # 判断元素是否在列表中 → True
# 5. 其他常用操作
print(len(lst)) # 查看列表长度(元素个数) → 5
print(sorted(lst)) # 排序(默认升序) → [2, 4, 5, 7, 10]
避坑提示:列表索引从0开始,长度为n的列表,索引范围是0~n-1,比如列表有5个元素,索引最大是4,用索引5会报错(索引越界)。
dic = {"name": "小明", "age": 20, "gender": "男"} # 原始字典
# 1. 增(新增键值对)
dic["score"] = 95# 新增键"score",值95 → {"name":"小明","age":20,"gender":"男","score":95}
# 2. 删(删除键值对)
del dic["gender"] # 按键删除 → {"name":"小明","age":20,"score":95}
dic.pop("age") # 按键删除,返回删除的值 → 20,字典变成{"name":"小明","score":95}
# 3. 改(修改值)
dic["score"] = 98# 按键修改值 → {"name":"小明","score":98}
# 4. 查(查找值)
print(dic["name"]) # 按键查值 → 小明(如果键不存在,会报错)
print(dic.get("age")) # 用get()查值 → None(键不存在,返回None,不报错,推荐新手用)
# 5. 其他常用操作
print(dic.keys()) # 查看所有键 → dict_keys(['name', 'score'])
print(dic.values()) # 查看所有值 → dict_values(['小明', 98])
print(dic.items()) # 查看所有键值对 → dict_items([('name', '小明'), ('score', 98)])
避坑提示:字典的键必须是“不可变类型”(字符串、数字、元组),列表、字典等可变类型不能当键,否则会报错。
学完基础后,一定要通过实战巩固,这3个小项目难度由浅入深,覆盖前面所学的知识点,新手跟着写,能快速掌握代码运用能力。
# 定义计算器函数
defcalculator():
print("===== 2026 Python简易计算器 =====")
# 接收用户输入,转成浮点数
num1 = float(input("请输入第一个数字:"))
num2 = float(input("请输入第二个数字:"))
# 选择运算方式
op = input("请输入运算符号(+、-、*、/):")
# 条件判断,执行对应的运算
if op == "+":
result = num1 + num2
print(f"{num1} + {num2} = {result}")
elif op == "-":
result = num1 - num2
print(f"{num1} - {num2} = {result}")
elif op == "*":
result = num1 * num2
print(f"{num1} * {num2} = {result}")
elif op == "/":
# 避免除数为0的错误
if num2 != 0:
result = num1 / num2
print(f"{num1} / {num2} = {result}")
else:
print("错误:除数不能为0!")
else:
print("错误:请输入正确的运算符号!")
# 调用计算器函数
calculator()
# 初始化待办事项列表
todo_list = []
print("===== 2026 简易待办事项列表 =====")
print("1. 添加待办事项")
print("2. 查看所有待办事项")
print("3. 删除待办事项")
print("4. 退出")
# 循环执行,直到用户选择退出
whileTrue:
choice = input("请输入你的选择(1-4):")
if choice == "1":
# 添加待办事项
todo = input("请输入待办事项:")
todo_list.append(todo)
print(f"待办事项「{todo}」添加成功!")
elif choice == "2":
# 查看所有待办事项
print("===== 你的待办事项 =====")
if todo_list: # 判断列表是否为空
for i in range(len(todo_list)):
print(f"{i+1}. {todo_list[i]}") # i+1让序号从1开始
else:
print("暂无待办事项~")
elif choice == "3":
# 删除待办事项
if todo_list:
index = int(input("请输入要删除的待办事项序号:")) - 1# 转成索引(减1)
if0 <= index < len(todo_list):
deleted = todo_list.pop(index)
print(f"待办事项「{deleted}」删除成功!")
else:
print("错误:序号不存在!")
else:
print("暂无待办事项,无法删除~")
elif choice == "4":
# 退出
print("退出待办事项列表,再见!")
break
else:
print("错误:请输入1-4之间的数字!")
说明:需要先安装requests和beautifulsoup4库(Python第三方库,用于爬取网页内容),安装步骤:
打开cmd(Windows)或终端(Mac);
输入命令:pip install requests beautifulsoup4;
等待安装完成,即可运行以下代码(爬取豆瓣电影TOP250的电影名称)。
import requests
from bs4 import BeautifulSoup
# 爬取豆瓣电影TOP250的网页内容
url = "https://movie.douban.com/top250"
response = requests.get(url) # 发送请求,获取网页内容
soup = BeautifulSoup(response.text, "html.parser") # 解析网页内容
# 查找所有电影名称(根据网页结构定位)
movie_titles = soup.find_all("span", class_="title")
# 循环打印电影名称(过滤掉外文名称)
print("===== 豆瓣电影TOP250(前20部) =====")
count = 0
for title in movie_titles:
if count < 20: # 只打印前20部
# 过滤掉包含"/"的外文名称
if"/"notin title.get_text():
print(f"{count+1}. {title.get_text()}")
count += 1
else:
break
新手学Python,80%的错误都是重复踩坑,整理了2026年新手最常犯的18个坑,每个都附错误示例+正确用法,帮你少走90%的弯路。
坑1:变量名命名违规 → 错误:1name = "小明"、name#1 = "小红";正确:name1 = "小明"、name_1 = "小红";
坑2:混淆赋值(=)和判断(==) → 错误:if age = 18:;正确:if age == 18:;
坑3:字符串拼接时类型不匹配 → 错误:print("我今年" + 25 + "岁");正确:print(f"我今年{25}岁");
坑4:input()获取数据未转类型 → 错误:num1 = input("请输入数字"),print(num1 + num2);正确:num1 = int(input("请输入数字"));
坑5:注释嵌套导致代码失效 → 错误:用三引号嵌套三引号;正确:多行注释用三引号,内层用#单行注释。
坑6:列表索引越界 → 错误:lst = [1,2,3],print(lst[3]);正确:print(lst[2])或print(lst[-1]);
坑7:试图修改元组元素 → 错误:tup = (1,2,3),tup[0] = 5;正确:先转列表修改,再转回元组;
坑8:用列表当字典的key → 错误:dic = {[1,2]: "value"};正确:dic = {(1,2): "value"};
坑9:空集合用{}创建 → 错误:s = {}(实际是字典);正确:s = set();
坑10:列表推导式逻辑过于复杂 → 错误:多层循环+多条件的推导式;正确:拆成普通循环,提高可读性。
坑11:缩进不一致/混用Tab和空格 → 错误:if条件下,一行用4个空格,一行用2个空格;正确:统一用4个空格;
坑12:while循环忘记更新退出条件 → 错误:count = 0,while count <5: print(count);正确:添加count += 1;
坑13:for循环中修改列表长度 → 错误:循环中用remove()删除列表元素,导致漏删;正确:先创建新列表,再赋值;
坑14:if条件中用多个= → 错误:if age === 18:(Python不支持三重=);正确:if age == 18:。
坑15:函数调用时参数个数不匹配 → 错误:def add(a,b): ... ,调用add(10);正确:调用add(10,20);
坑16:忘记导入第三方库 → 错误:直接用requests.get();正确:先写import requests;
坑17:pip安装失败 → 解决:按本文“环境搭建”部分的pip修复步骤操作,或用pip install --upgrade pip更新pip;
坑18:死记语法不练代码 → 错误:只看教程不敲代码;正确:每个知识点都敲3-5遍代码,理解逻辑比背诵重要。
不要死记硬背:Python语法简洁,理解逻辑比背诵代码更重要,比如记住“变量是容器”“列表是可变的”,比记住每一行代码更有用;
每天坚持敲代码:新手每天花30分钟,敲当天学的知识点代码,多练多错,才能快速掌握;
从简单项目开始:不要一开始就挑战复杂项目,先完成本文的3个小项目,再逐步进阶到数据分析、自动化等场景;
善用搜索引擎:遇到报错不要慌,复制报错信息到百度/谷歌搜索,80%的问题都有解决方案(推荐Stack Overflow、菜鸟教程);
选择合适的学习资源:
书籍:《Python编程:从入门到实践》(新手首选);
在线教程:Python官方文档、菜鸟教程;
练习工具:LeetCode简单题、Codecademy。
结尾:Python入门不难,难的是坚持和实战。2026年,Python的应用场景会越来越广,掌握基础后,无论是想做数据分析、自动化办公,还是Web开发、AI,都能快速进阶。跟着这篇教程,一步一个脚印,1-2周就能摆脱新手身份,真正上手Python!