Python 简介与入门

前言

在计算机工作中,许多任务适合自动化处理,如文本文件的查找 / 替换、图片重命名整理等。专业软件开发者在使用 C/C++/JAVA 类库时,常面临编写 / 编译 / 测试周期长、编写测试用例繁琐等问题。当程序支持扩展语言时,也不想重新设计新语言。而 Python 正是解决这些问题所需的语言。

一、Python 初识

1. Python 的优势

Python 虽易于使用,但它是完整的编程语言。与 Shell 脚本或批处理文件相比,能为编写大型程序提供更多结构和支持;比 C 有更多错误检查,作为高级语言,内置支持如灵活数组和字典等高级数据结构类型,适用于更多问题领域。它允许将程序分割为不同模块,以便在其他 Python 程序中重用,还内置大量标准模块,涵盖文件 I/O、系统调用、Socket 支持、用户图形界面(GUI)工具包接口等。此外,Python 是解释型语言,无需编译和链接,可节省开发时间,其解释器能交互使用,便于试验语言特性、编写临时程序或测试方法,甚至可当作桌面计算器。

2. Python 的特性

Python 让程序编写得紧凑和可读。其程序通常比 C、C++ 或 Java 程序更短小,原因在于:高级数据结构可在一条语句中表达复杂操作;语句组使用缩进代替开始和结束大括号来组织;变量或参数无需声明 。

3. Python 的应用领域

Python 是通用编程语言,应用广泛,学习曲线平滑,是编程入门的首选语言。

  • 数据科学和机器学习:有 NumPy、Pandas、Scikit-learn 和 TensorFlow 等强大库和框架。
  • Web 开发:拥有 Django 和 Flask 等流行 Web 框架。
  • 自动化测试:具备 unittest 和 pytest 等流行测试框架。
  • 网络爬虫:包含 BeautifulSoup、Scrapy 和 Requests 等强大库和框架。
  • 游戏开发:有 Pygame 和 Panda3D 等流行游戏引擎。
  • 数据分析:拥有 NumPy、Pandas 和 Matplotlib 等流行库和框架。
  • 数据可视化:包含 Matplotlib、Seaborn 和 Bokeh 等流行库和框架。

二、Linux 环境中安装 Python

1. 下载 Python3.11.6

可在 Python 官方网站(http://www.python.org)下载。

2. 安装依赖包

  • 设置 yum 仓库:设置好 centos 基础源和 epel 扩展源,本案例使用阿里的更新源。
  • 安装依赖包

bash

[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 openssl11)
[root@localhost~]#export LDFLAGS=(pkg-config --libs openssl11)  #设置编译FLAG,以便使用最新的openssl库

3. 解压 Python 压缩包

解压 Python-3.11.6.tgz,命令如下:

bash

[root@localhost~]#tar xvf Python-3.11.6.tar.xz

4. 安装 Python

bash

[root@master home]#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-ssl:编译安装 ssl 模块到 Python3 中(默认)

5. 编译及安装

编译安装 Python-3.11.6,命令如下:

bash

[root@master Python-3.11.6]#make
[root@master Python-3.11.6]#make install

若主机已安装其他版本 python3(3 的版本),应使用 altinstall 而不是 install,因为 install 会创建符号链接,可能破坏系统;若是 python2 版本,则无此影响。

6. 建立软连接

建立相关软连接,命令如下:

bash

[root@master Python-3.11.6]#ln -s /usr/local/python3/bin/python3 /usr/bin/python3
[root@master Python-3.11.6]#ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

7. 测试 Python3 运行

安装设置完毕,测试 Python3 的运行情况,命令如下:

bash

[root@master Python-3.11.6]#python3
Python 3.11.6 (default, Apr 22 2020, 17:24:20)
[GCC 4.8.5 20150623 (Red Hat 4.8.5 - 16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>print("hello world')
>>>hello world

备注:Ctrl+D 或 exit () 退出

8. 设置国内 pip 更新源

本案例使用阿里的更新源,

bash

[root@localhost~]#cat<<EOF>/root/.config/pip/pip.conf
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com

备注:使用如下命令也可以

bash

pip3 config set global.index-url http://mirrors.aliyun.com/pypi/simple
pip3 config set install.trusted-host mirrors.aliyun.com

9. 更新 pip 版本(必须更新)

bash

[root@localhost~]#pip3 install --upgrade pip

提示:安装结束后给主机做一个快照。

三、windows 系统中安装 Python

1. 安装 Python 程序

  • 双击安装包:双击 python 安装包 python-3.11.6-amd64,可选择默认安装或自定义安装,安装路径默认为 C:\Users\Administrator\AppData\Local\Programs\Python\Python311 ,安装包包含 IDLE、pip 和文档,可选择添加 python.exe 到 PATH 。
  • 安装完成界面:安装成功后,可通过在终端输入 py 启动 Python,或在开始菜单搜索 Python,还可选择禁用路径长度限制。

2. 安装 vscode 编译器

在 Windows 系统中,Python 自带的 IDLE 编译器使用体验不佳,可安装 vscode 编译工具。

  • 双击安装包:双击安装包 VSCodeUserSetup-x64-1.85.0,进入安装界面,阅读并同意许可协议。
  • 设置安装路径:选择安装位置,至少需要 353.5MB 的可用磁盘空间。
  • 选择开始菜单文件夹:可直接点下一步,也可选择自定义开始菜单文件夹。
  • 选择附加任务:可选择创建桌面快捷方式、将 “通过 Code 打开” 操作添加到 Windows 资源管理器文件和目录上下文菜单、将 Code 注册为受支持的文件类型的编辑器、添加到 PATH(重启后生效)等附加任务。
  • 开始安装:确认安装设置后开始安装,安装完成后可选择直接运行 Visual Studio Code。

3. 安装 vscode 插件

  • 安装 python 插件:点击 Extensions(扩展)按钮,在搜索区域输入 “python”,选择 Python 插件进行安装,安装后可在 vscode 中编辑 python 代码。
  • 安装 black format 插件(选装):用同样方法安装 “black format” 插件,该插件可使用 “Shift+Alt+F” 组合键对 Python 代码进行格式化处理,整理代码书写规范。

4. 设置国内更新源

bash

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. 标识符

标识符是对变量、常量、函数、类等对象起的名字。Python 严格区分大小写,标识符命名规则如下:

  • 长度不受限制,字符必须是字母、数字、下划线(_),不能使用空格、连字符、标点符号、引号或其他字符。
  • 第一个字符不能是数字,必须是字母或下划线。
  • 不能将 Python 关键字用作标识符。中文也可作为标识符。

2. Python 保留字

Python 保留字,即关键字,是用作语法功能的专用标识符,不能用作自定义标识符名称,且只包含小写字母。可通过 python 提供的 keyword 模块输出当前版本的所有关键字:

python

运行

>>>import keyword 
>>>keyword.kwlist 
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise','return', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'try', 'while', 'with', 'yield']

3. 注释

  • 单行注释:以符号 “#” 为单行注释的开始,从它往后到本行的末尾都是注释内容。
  • 多行注释:Python 没有真正意义上的多行注释(块注释),可使用多个单行注释表示。

4. 语句与缩进

  • 语句:在代码中,能完整表达某个意思、操作或逻辑的最短代码就是语句。Python 标准语言不需要使用分号,简单换行就表示语句结束。
  • 代码块:为完成某一特定功能而联系在一起的一组语句构成一个代码块,如判断、循环、函数、类等。代码块首行通常以关键字开始,以冒号(:)结束。Python 使用缩进来表示代码块,一般用四个空格缩进,在 pycharm 或 vscode 中 tab 自动转换为 4 个空格,在 Linux 环境的 VIM 编辑器中,建议使用空格。
  • 多行语句:如果一条语句太长,可使用反斜杠(\)实现多行语句。

5. pass 语句

pass 语句是占位语句,什么都不做,用于保证语法正确性,适用于不知道后面代码怎么写、不需要写代码细节、语法必须但无实际内容可写等场景。

六、Python 常用的数据类型

Python 内置数据类型有数字、字符串、元组、列表和字典。

1. 数字

数字类型包括整型、浮点型、布尔型等,声明时由 Python 内置基本数据类型管理变量,根据变量值自动判断变量类型。

  • 整型和浮点型:整数用整型表示,有小数位用浮点型表示。变量类型可改变,再次赋值时实际创建了新变量。
  • 布尔型:用于逻辑运算,有 True、False 两个值,表示真和假。使用比较运算符返回的结果是布尔值。
  • Python 运算符:算术运算符与数学运算符号基本相同,包括 +、-、*、/ ,还有求模(%)和求幂(**)运算。运算顺序为先乘除后加减,小括号优先。

2. 字符串

字符串是一组包含数字、字母和符号的集合,整体使用。

  • 字符串使用:有单引号、双引号、三引号三种表示方式,单引号和双引号作用相同,定义多行文字时需用三引号。
  • 使用字符串注意事项:单引号、双引号、三引号需成对出现;字符串中单独出现单引号或双引号时,可用另一种引号定义;出现特殊字符时,可用转义字符 “\” 定义。
  • 字符串的其它用法:字符串可进行乘法(*)操作,一个整型数字与字符串相乘,结果是该字符串重复相应次数。

3. 列表

列表(list)是重要的数据类型,通常作为函数返回类型,由一组元素组成,可实现添加、删除和查找操作,元素值可修改。

  • 列表的定义:由中括号 “[]” 定义,元素以逗号分开。
  • 列表的取值:列表数据有序,可单独取出某一位置元素的数值,也可获取指定范围的一组元素。
  • 修改列表元素值:可修改指定位置的列表元素值。
  • 添加列表元素:可把元素添加到列表最后,也可在列表指定位置前插入新元素。
  • 删除列表元素:可删除列表指定索引位置的元素。
  • 查找列表元素:使用 in 关键字可查找列表中是否存在指定数值,返回布尔类型 True 或 False。
  • 合并列表:多个列表可使用加号(+)合并,后面列表元素追加到前面列表后面。
  • 重复列表:使用星号(*)可对列表进行重复操作。
  • 列表常见问题:使用列表时可能出现索引越界问题;负数索引表示从列表末尾反向取值;获取列表指定范围元素时,不存在索引越界问题,还可同时使用正数和负数索引;列表元素也可以是列表。

4. 元组

元组(tuple)和列表类似,由不同元素组成,元素可存储不同类型数据,但元组不可修改,通常表示一行数据,元素表示不同数据项。

  • 元组的创建:由关键字和小括号定义,创建后不能修改内容。与列表相比,元组操作速度更快,数据更安全。
  • 元组的操作:取值操作与列表相同;不允许删除元组中的元素值,但可删除整个元组;元组和列表可互相转换。

5. 字典

字典(dict)是重要的数据类型,由 “键 - 值” 对组成,值通过键来引用。

  • 字典的创建:每个元素由键值对组成,键值用冒号分隔,键值对用逗号隔开,包含在花括号中。键唯一,值无序,一般用字符串作为键。
  • 字典的取值操作:通过键获取对应的值,键是唯一的,不同键的值可相同,定义多个相同键时,字典只保留最后一个键值对。
  • 字典的添加、修改、删除操作:添加新元素只需对新键赋值;修改元素直接对存在的键赋值;删除元素使用 del 函数。
  • 字典的常见问题:字典不能使用 “+” 运算符执行连接操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值