目录
一:Python 初始
1.Python 的优势
2.Python 的特性
3.Python 的应用领域
(1)数据科学和机器学习
(2)wed 开发
(3)自动化测试
(4)网络爬虫
(5)游戏开发
(6)数据分析
(7)数据可视化
二:Linux环境中安装
1.下载Python3.11.6
2.安装依赖包
(1)设置yum 仓库
(2)安装依赖包
3.解压Python压缩包
4.安装Python
5.编译及安装
6.建立软连接
7.测试Python3 运行
8.设置国内pip更新源
9.更新pip版本
三:windows 系统中安装Python
1.安装Python 程序
2.安装vscode编译器
3.安装vscode插件
(1)安装python插件
(2)安装black format插件
4.设置国内更新源
四:Python 的语法基础
1.标识符
2.python保留字
3.注释
(1)单行注释
(2)多行注释
4.语句与缩进
(1)语句
(2)代码块
(3)多行语句
5.pass语句
五:Python常用的数据类型
1.数字
(1)整形和浮点型
(2)布尔型
(3)python运算符
2.字符串
(1)字符串使用
(2)使用字符串注意事项
(3)字符串的其他使用用法
3.列表
(1)列表的定义
(2)列表的取值
(3)修改列表元素值
(4)添加列表元素
(5)删除列表元素
(6)查找列表元素
(7)合并列表
(8)重复列表
(9)列表常见问题
4.元组
(1)元组的创建
(2)元组的操作
5.字典
(1)字典的创建
(2)字典的取值操作
(3)字典的添加,修改,删除操作
(4)字典的常见问题
一:Python 初始
1.Python 的优势
虽然 Python 易于使用,但它却是一门完整的编程语言;与 Shel1 脚本或批处理文件相比,它为编写大型程序提供了更多的结构和支持。另一方面,Python 提供了比c 更多的错误检査,并且作为一门 高级语言,它内置支持高级的数据结构类型,例如:灵活的数组和字典。因其更多的通用数据类型,Python比 Awk 甚至 Perl 都适用于更多问题领域,至少大多数事情在 Python 中与其他语言同样简单。
Python 允许你将程序分割为不同的模块,以便在其他的 Python 程序中重用。Python 内置提供了大量的标准模块,你可以将其用作程序的基础,或者作为学习 Python 编程的示例。这些模块提供了诸如文件 I/0、系统调用、Socket 支持,甚至类似 Tk 的用户图形界面(GUI)工具包接口。
Python 是一门解释型语言,因为无需编译和链接,你可以在程序开发中节省宝贵的时间。Python 解释器可以交互的使用,这使得试验语言的特性、编写临时程序或在自底向上的程序开发中测试方法非常容易。你甚至还可以把它当做一个桌面计算器。
备注:
Tkinter(也叫 Tk 接口)是 Tk图形用户界面工具包标准的 Python 接口。Tk是一个轻量级的跨平台图形用户界面(GUI)开发工具。
2.Python 的特性
Python 让程序编写的紧凑和可读。用 Python 编写的程序通常比同样的C、C++ 或 Java 程序更短小,这是因为以下几个原因:
- 高级数据结构使你可以在一条语句中表达复杂的操作;
- 语句组使用缩进代替开始和结束大括号来组织;
- 变量或参数无需声明。
3.Python 的应用领域
Python 是一种通用编程语言,具有广泛的应用领域。也是一门学习曲线非常平滑的编程语言。
(1)数据科学和机器学习
Python 在数据科学和机器学习领域非常流行,因为它有许多强大的库和框架,如 NumPy、Pandas、Scikit-learn 和 TensorFlow等。
(2)wed 开发
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环境中安装
1.下载Python3.11.6
可以在 Python 的官方网站下载,网址是 http://www.python.org
2.安装依赖包
(1)设置yum 仓库
设置好 centos 基础源和 epel扩展源。
(2)安装依赖包
[root@localhost ~]# yum -y install gcc zlib zlib-devel libffi libffi-devel
#安装源码编译需要的编译环境
[root@localhost ~]# yum -y install readline-devel
#可以解决后期出现的方向键、删除键乱码问题,这里提前避免。
[root@localhost ~]# yum -y install openssl-devel openssl11 openssl11-devel
[root@localhost ~]# export CFLAGS=$(pkg-config --cflags openss111)[root@localhost ~]# export LDFLAGS=$(pkg-config --libs openssl11)
#设置编译 FLAG,以便使用最新的 openssl库
3.解压Python压缩包
解压 Python-3.11.6.tgz,命令如下:
[root@localhost ~]# tar xvf python-3.11.6.tar.xz
4.安装Python
[root@master homel# cd python-3.11.6/
[root@master Python-3.11.6]# ./configure --prefix=/usr/local/python3
此处有可选配置项,含义如下:
--enable-optimizations:用 PROFILE TASK 启用以配置文件主导的优化(PGO)
--with-lto:在编译过程中启用链接时间优化(LTO)
--enable-shared:启用共享 Python库 libpython 的编译
--with-ss1:编译安装 ss1 模块到 Python3 中(默认)
5.编译及安装
编译安装 Python-3.11.6,命令如下:
[root@master Python-3.11.6]# make
[root@master Python-3.11.6]# make install
如果主机上已经安装有其他版本的 python3,注意是3的版本,要使用 altinstall 而不是insta11 。二者的一个重要区别在于,后者会创建符号链接,将 python3 等命令链接到正在安装的新版本 Python 3 上,这可能会破坏系统。如果是 python2 的版本,不会有此影响。
6.建立软连接
建立相关软连接,命令如下:
[root@master Python-3.11.6]#In -s /usr/local/python3/bin/python3 /usr/bin/python3
[root@master Python-3.11.6]# In -s /usr/local/python3/bin/pip3 /usr/bin/pip3
7.测试Python3 运行
安装设置完毕,测试 Python3 的运行情况,命令如下:
[root@master Python-3.11.6]# python3
8.设置国内pip更新源
本案例使用阿里的更新源,
[root@localhost ~]# cat<<EOF> /root/.config/pip/pip.conf
备注:
使用如下命令也可以
pip3 config set global.index-url http://mirrors.aliyun.com/pypi/simple
pip3 config set install.trusted-host mirrors.aliyun.com
9.更新pip版本
[root@localhost ~]# pip3 install --upgrade pip
三:windows 系统中安装Python
1.安装Python 程序
双击python安装包python-3.11.6-amd64
2.安装vscode编译器
1.双击安装包VSCodeUserSetup-64x-1.85.0,进入安装界面
2.设置安装路径
3.选择开始菜单文件夹
4.选择附加文件
5.开始安装
6.安装之后直接开始运行
3.安装vscode插件
(1)安装python插件
- 打开 VSCode 后,点击左侧活动栏中的 “扩展” 图标(四个方块组成的图标),或者使用快捷键
Ctrl + Shift + X打开扩展视图。 - 在搜索框中输入 “Python”,找到由 Microsoft 发布的 Python 扩展,点击 “安装” 按钮进行安装。
(2)安装black format插件
- 继续在扩展视图的搜索框中输入 “black format”。
- 找到对应的插件后点击 “安装” 按钮进行安装。
4.设置国内更新源
pip config set global.index-url http://mirrors.aliyun.com/pypi/simple
pip config set install.trusted-host mirrors.aliyun.com
pip install --upgrade pip
四:Python 的语法基础
1.标识符
- 定义:标识符是程序中用来标识变量、函数、类、模块或其他对象的名字。
- 命名规则:
- 只能包含字母(A - Z,a - z)、数字(0 - 9)、中文和下划线(_)。
- 不能以数字开头。
- 区分大小写,如
variable和Variable是不同的标识符。 - 不能是 Python 的关键字或保留字。
- 命名规范:
- 变量命名:应简短且有意义,使用小写字母和下划线分隔单词,如
total_sum、user_name。 - 函数命名:应描述函数的行为,使用小写字母和下划线分隔单词,如
calculate_area、print_message。 - 类命名:使用大写字母开头的单词,如果类名由多个单词组成,使用驼峰命名法,如
DataProcessor、AccountManager。
- 变量命名:应简短且有意义,使用小写字母和下划线分隔单词,如
2.python保留字
保留字也称为关键字,被赋予了特殊含义,不能把保留字作为函数、模块、变量、类和其他对象的名称来使用。Python 语言保留字包括以下 33 个:and、as、assert、break、class、continue、def、del、elif、else、except、False、finally、for、from、global、if、import、in、is、lambda、None、nonlocal、not、or、pass、raise、return、True、try、while、with、yield。
3.注释
(1)单行注释
使用#表示,从#开始到行尾的所有内容都是注释。例如print('hello Python') # 输出。在 PyCharm 中,可以使用Ctrl + /(Windows/Linux)或Cmd + /(macOS)进行快速单行注释。
(2)多行注释
使用三个单引号(''')或三个双引号(""")将注释内容包裹起来
4.语句与缩进
(1)语句
Python 中,一条语句通常占一行,每条语句结尾不需要使用;。但可以使用;将两条简单语句写在一行,不过不建议这么做。如果一条语句较长,要分几行来写,可以使用\进行换行。同时,系统能够自动识别换行,在一对括号(包括圆括号、方括号和花括号)中间或三引号之间均可换行。
(2)代码块
Python 中使用缩进表示语句块,同一个语句块中的代码必须保证严格的左对齐(左边有同样数目的空格和制表符)。一般而言,行尾遇到了 “:” 就表示下一行缩进的开始。
(3)多行语句
除了使用\进行换行外,在括号、中括号、大括号内的内容也可以跨行书写。
5.pass语句
pass 语句是 Python 中一个非常特殊且实用的语法特性。它的主要作用是作为占位符,在需要语句但暂时还没想好写什么代码的地方保持程序结构的完整性。其语法格式就是一个单词:pass。在函数定义、类定义、条件语句、循环语句等需要代码块的地方,都可以使用pass。例如:
def function_name():pass # 这里暂时不写具体代码,先使用pass占位
五:Python常用的数据类型
1.数字
(1)整形和浮点型
- 整型(int):表示整数,可正可负,没有小数部分。如
10、-5、0。
a = 10
b = -5
print(type(a)) # <class 'int'>
- 浮点型(float):表示带有小数部分的数字,由整数部分、小数点和小数部分组成。如
3.14、-0.5。
c = 3.14
d = -0.5
print(type(c)) # <class 'float'>
(2)布尔型
布尔型(bool)只有两个值:True和False,常用于条件判断。
is_valid = True
is_empty = False
print(type(is_valid)) # <class 'bool'>
(3)python运算符
- 算术运算符:
+(加)、-(减)、*(乘)、/(除)、//(整除)、%(取余)、**(幂运算)。
print(5 + 3) # 8
print(5 - 3) # 2
print(5 * 3) # 15
print(5 / 3) # 1.6666666666666667
print(5 // 3) # 1
print(5 % 3) # 2
print(5 ** 3) # 125
- 比较运算符:
==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。
print(5 == 3) # False
print(5 != 3) # True
- 逻辑运算符:
and(逻辑与)、or(逻辑或)、not(逻辑非)。
print(True and False) # False
print(True or False) # True
print(not True) # False
2.字符串
(1)字符串使用
字符串是由零个或多个字符组成的有限序列,使用单引号(')、双引号(")或三引号(''' 或 """)来表示。
str1 = 'Hello'
str2 = "World"
str3 = '''This is a multi - line string.
It can span multiple lines.'''
print(str1 + ' ' + str2) # Hello World
(2)使用字符串注意事项
- 若字符串中包含单引号,可使用双引号来定义字符串,反之亦然。
str4 = "He said, 'Hello!'"
str5 = 'She said, "Hi!"'
- 三引号可用于创建多行字符串。
(3)字符串的其他使用用法
- 字符串切片:通过索引来获取字符串的一部分。
s = "abcdef"
print(s[1:3]) # bc
- 字符串格式化:使用
f - 字符串、format()方法等。
name = "Alice"
age = 20
print(f"My name is {name} and I'm {age} years old.")
print("My name is {} and I'm {} years old.".format(name, age))
3.列表
(1)列表的定义
列表是一种可变的、有序的数据类型,使用方括号([])来定义,元素之间用逗号分隔。
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
(2)列表的取值
通过索引来获取列表中的元素,索引从 0 开始。
print(list1[0]) # 1
(3)修改列表元素值
直接通过索引来修改列表中的元素。
list1[0] = 10
print(list1) # [10, 2, 3]
(4)添加列表元素
- append():在列表末尾添加一个元素。
list1.append(4)
print(list1) # [10, 2, 3, 4]
- insert():在指定位置插入一个元素。
list1.insert(1, 5)
print(list1) # [10, 5, 2, 3, 4]
(5)删除列表元素
- del:根据索引删除元素。
del list1[0]
print(list1) # [5, 2, 3, 4]
- remove():根据元素值删除元素。
list1.remove(2)
print(list1) # [5, 3, 4]
(6)查找列表元素
使用in关键字来判断元素是否在列表中。
print(3 in list1) # True
(7)合并列表
使用+运算符或extend()方法。
list3 = [6, 7]
list4 = list1 + list3
print(list4) # [5, 3, 4, 6, 7]
list1.extend(list3)
print(list1) # [5, 3, 4, 6, 7]
(8)重复列表
使用*运算符。
print(list3 * 2) # [6, 7, 6, 7]
(9)列表常见问题
- 索引越界:当使用的索引超出列表的范围时,会引发
IndexError。 - 修改不可变元素时:若列表中包含不可变元素,修改这些元素会创建新对象。
4.元组
(1)元组的创建
元组是一种不可变的、有序的数据类型,使用圆括号(())来定义,元素之间用逗号分隔。
tuple1 = (1, 2, 3)
tuple2 = 'a', 'b', 'c' # 可以省略圆括号
(2)元组的操作
- 元组取值:和列表类似,通过索引来获取元素。
print(tuple1[0]) # 1
- 由于元组不可变,不能对其元素进行修改、添加或删除操作
5.字典
(1)字典的创建
字典是一种可变的、无序的数据类型,使用花括号({})来定义,键值对之间用逗号分隔,键和值之间用冒号分隔。
dict1 = {'name': 'Alice', 'age': 20}
(2)字典的取值操作
通过键来获取对应的值。
print(dict1['name']) # Alice
(3)字典的添加,修改,删除操作
- 添加:直接通过新的键来赋值。
dict1['city'] = 'New York'
print(dict1) # {'name': 'Alice', 'age': 20, 'city': 'New York'}
- 修改:通过已有的键来赋值。
dict1['age'] = 21
print(dict1) # {'name': 'Alice', 'age': 21, 'city': 'New York'}
- 删除:使用
del关键字。
del dict1['city']
print(dict1) # {'name': 'Alice', 'age': 21}
(4)字典的常见问题
- 键必须是不可变类型,如整数、字符串、元组等。
- 若使用不存在的键来取值,会引发
KeyError。
