一:Python简介与核心优势
1.Python是什么?
Python 是一种高级、解释型、动态类型的编程语言,由 Guido van Rossum 于 1991 年发布。它以简洁的语法、强大的功能和丰富的生态系统著称,广泛应用于数据分析、Web 开发、人工智能等领域。
2.Python的核心优势
- 简介高效
- 代码量少,例如print("Hello World")即可输出内容。
- 内置高级数据结构(如列表,字典)简化复杂操作。
- 跨平台兼容:支持Windows,Linux,macOS等操作系统。
- 丰富的库支持:
- 标准库:os(系统操作),re(正则表达式),datetime(时间处理)等。
- 第三方库:NumPy(数值计算),Django(Web框架),TensorFlow(机器学习)。
- 社区活跃:全球开发者贡献了大量开源项目和文档资源。
3.Python的应用场景
(1)数据科学和机器学习
- Python在数据科学和机器学习领域非常流行,因为它有许多强大的库和框架,如Numpy,Pandas,Scikit-learn和TensorFlow等。
(2)Web开发
- Python也可以用于Web开发,因为它有Django和Flask等流行的Web框架。
(3)自动化测试
- Python还可以用于自动化测试,因为它有许多流行的测试框架,如unittest和pytest等。
(4)网络爬虫
- Python还可以用于网络爬虫,因为它有许多强大的库和框架,如Beautifulsoup,Scrapy和Requests等。
(5)游戏开发
- Python也可以用于游戏开发,因为它有许多流行的游戏引擎,如Pygame和Panda3D等。
(6)数据分析
- Python还可以用于数据分析,因为它有许多流行的库和框架,如Numpy,Pandas和Matplotlib等。
(7)数据可视化
- Python还可以用于数据可视化,因为它有许多流行的库和框架,如Matplotlib,Seaborn和Bokeh等。
二,环境搭建:Linux与Windows详细指南
1.Linux系统安装Python 3.11
步骤1:安装依赖包
yum -y install gcc zlib-devel libffi-devel openssl-devel readline-devel
- 作用:确保编译环境完整,避免安装过程中出现依赖错误。
步骤2:下载并解压源码包
tar xvf Python-3.11.6.tar.xz
步骤3:编译与安装
cd Python-3.11.6
./configure --prefix=/usr/local/python3 --enable-optimizations
make && make altinstall # 使用 altinstall 避免覆盖系统默认 Python3
- 关键参数:
- --enable-optimizations:启用编译优化,提升性能。
- --prefix:指定安装路径。
步骤4:配置软链接与pip源
ln -s /usr/local/python3/bin/python3.11 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.11 /usr/bin/pip3
pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/ # 使用阿里云镜像加速
步骤4:测试Python3运行
python3
Python 3.11.6 (main, Dec 18 2024, 22:06:12) [GCC 12.3.1 (openEuler 12.3.1-62.oe2403sp1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('hello world')
hello world
备注:Ctr+D或exit()退出
2.Windows系统安装Python
步骤1:下载安装包
- 访问Python官网,下载Python-3.11.6-amd64.exe。或我文章里带着安装包,有需要的可以直接下载。
步骤2:运行安装程序
- 勾选选项:
- Add Python to PATH :将Python添加到系统环境变量。
- Install Iauncher for all users:允许所有用户使用Python。
步骤3:验证安装
python --version # 输出 Python 3.11.6
pip --version # 输出 pip 版本
3.配置开发工具
- VSCode安装:
- 下载并安装VSCode,勾选添加到PATH和注册为默认编辑器。
- 插件推荐:
- Python:代码高亮与调试支持。
- Pylance:智能代码补全。
三:基础语法:标识符,注释,语句与代码块
1.标识符命名规则
- 合法命名:以字母或下划线开头,后续字符可为字母,数字或下划线。
- 正确示例:name,_id,user_age。
- 错误示例:123var(数字开头),my-name(含连字符)。
- 大小写敏感:Name与name被视为不同变量。
- 不能将Python关键字用作标识符。
2.保留字(关键字)
- 查看所有关键字:
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 禁止使用关键字作为标识符:例如class=10会报错。
3.注释与文档字符串
- 单行注释:以#开头
# 这是一个单行注释
- 多行注释:使用三引号或连续#
'''
这是一个多行注释,
用于说明复杂逻辑。
'''
# 注释1
# 注释2
4.语句与代码块
- 简单语句:以换行符结束,无需分号。
a = 10
print(a)
- 代码块:通过缩进(通常4个空格)定义。
if a > 5:
print("a 大于 5") # 缩进表示代码块
else:
print("a 小于 5")
- 多行语句:使用反斜杠\或括号换行。
total = 1 + 2 + \
3 + 4
5.Pass语句
pass语句是占位语句,它什么都不做,只是为例保证的正确性而写,以下场景中,可以使用pass语句:
- 当你不知道后面代码怎么写的时候
- 当你不需要写代码细节的时候
- 当语法必须,又没有实际内容可写的时候
- 其他的一些你觉得需要的场景
- 作用:占位符,保持语法完整性。
a=10
if a>5:
print("a大于5")
else:
pass # 待后续补充逻辑
四,数据类型详解:数字,字符串,列表,元组,字典
1.数字类型(Number)
整型(int)与浮点型(float)
- 定义:
x = 10 # 整型
y = 3.14 # 浮点型
- 运算:
print(5 + 3) # 加法:8
print(2 ** 3) # 幂运算:8
print(10 % 3) # 取模:1
布尔型(bool)
- 定义:True或False,常用于条件判断。
is_valid = True
if is_valid:
print("条件成立")
2.字符串(str)
定义与转移字符
- 三种定义方式:
s1 = '单引号字符串'
s2 = "双引号字符串"
s3 = '''多行
字符串'''
- 转义字符:
print("Let\'s Go!") # 输出:Let's Go!
print("第一行\n第二行") # 换行输出
字符串操作
- 拼接与重复:
print("Hello" + "World") # 输出:HelloWorld
print("Hi" * 3) # 输出:HiHiHi
使用字符串注意事项
字符串的定义方式单引号,双引号,三引号大部分情况下作用是相同,但在特殊情况中使用也有所区别。
- 索引与切片:
s = "Python"
print(s[0]) # 输出:P
print(s[2:5]) # 输出:tho(索引2到4)
Python的常用转义字符
\ | (在结尾时)续行符 |
\\ | 反撇杠符号 |
\‘ | 单引号 |
\” | 双引号 |
\n | 换行 |
\v | 纵向制表符 |
\t | 横向制表符 |
\r | 回车 |
3.列表(list)
定义与操作
- 创建于修改:
nums = [1, 2, 3]
nums.append(4) # 添加元素:[1, 2, 3, 4]
nums.insert(1, 5) # 插入元素:[1, 5, 2, 3, 4]
del nums[0] # 删除元素:[5, 2, 3, 4]
- 切片于合并:
print(nums[1:3]) # 输出:[2, 3]
new_list = nums + [6, 7] # 合并列表:[5, 2, 3, 4, 6, 7]
镶嵌列表
- 示例:
matrix = [[1, 2], [3, 4]]
print(matrix[0][1]) # 输出:2
- 删除列表元素
语法:
del 列表名[索引位置]
num = ['001','002','003']
del num[1]
print (num)
['001','003']
- 查找列表元素
语法:
元素值 in 列表名
num = ['001','002','003']
'001' in num
True
'004' in num
False
4.元组(tuple)
列表 | 元组 | |
元素 | 方括号 | 圆括号 |
可变性 | 可变 | 不可变 |
操作 | 添加,修改,删除,搜索 | 搜索 |
不可变特性
- 定义与访问
t = (1, 2, 3)
print(t[0]) # 输出:1
# t[0] = 4 # 报错:元组不可修改
- 转换操作:
list_num = list(t) # 元组转列表
tuple_num = tuple([1, 2, 3]) # 列表转元组
5.字典(dict)
键值对结构
- 定义与操作:
user = {"name": "Alice", "age": 25}
print(user["name"]) # 输出:Alice
user["email"] = "alice@example.com" # 添加键值对
del user["age"] # 删除键
- 键唯一性:重复键会覆盖旧值。
user = {"name": "Bob", "name": "Alice"} # 最终 name 为 Alice
- 修改字典元素
mobile = {'Tom' : '19911111','Alice':19922222',}
mobile['Tom']='19933333'
print(mobile)
{’Tom':‘19933333’,‘Alice':'19922222'}
- 删除字典中的元素
mobile = {'Tom':'19911111','Alice':'19922222'}
del mobile['Tom']
print (mobile)
{'Alice':'19922222}
使用del函数删除键“Tom”,字典中的对应键不存在了。
五,常见问题与解决方案
1.索引越界
- 问题:访问列表或元组时超出索引范围。
nums = [1, 2, 3]
print(nums[5]) # 报错:IndexError
- 解决:使用负数索引或检查索引范围。
print(nums[-1]) # 输出最后一个元素:3
2.类型转换错误
- 问题:将不支持的类型转换为目标类型。
int("abc") # 报错:ValueError
- 解决:确保数据可转换。
int("123") # 正确:123
3.字典键冲突
- 问题:重复键导致数据覆盖。
user = {"name": "Bob", "name": "Alice"}
- 解决:确保键唯一,或用update()合并字典。
六:总结与学习资源推荐
1.核心总结
- Python优势:简洁、跨平台、生态丰富。
- 环境配置:Linux 编译安装需注意依赖,Windows 需配置环境变量。
- 语法重点:缩进规则、动态类型、代码块结构。
- 数据类型:列表灵活可变,元组不可变,字典高效查找。
2.学习路径建议
- 基础阶段:掌握语法与数据类型,完成简单项目(如计算器、文件管理脚本)。
- 进阶阶段:学习面向对象编程(类与对象)、异常处理、文件操作。
- 实战阶段:使用
Django
开发 Web 应用,用Pandas
分析数据。
3.推荐资源
- 官方文档:Python 3.11 Documentation
- 在线练习:LeetCode,HackerRank
- 书籍:
- 《Python Crash Course》:适合零基础入门。
- 《Fluent Python》:深入理解高级特性。