1.基础知识
1.1 介绍
官网:www.python.org
linux安装python
安装前置依赖程序
yum install wget zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make zlib zlib-devel libffi-devel -y
下载源码包、解压
执行命令
配置:
./configure --prefix=/usr/local/python3.10.4
编译:
make && make install
一般linux自带python,可以删除 rm -rf /usr/bin/python
软连接自己安装的python:
ln -s /usr/local/python3.10.4/bin/python3.10.4 /usr/bin/python
创建软连接后,会破坏yum程序的正常使用(只能使用系统自带的python2)
修改如下2个文件
修改yum依赖的python版本
vi /usr/libexec/urlgrabber-ext-down
改成python2
修改/usr/bin/yum,将python改成python2
1.2解释器
解释器放在<python安装目录>/python.exe
1.3基础语法
1.3.1 字面量
在代码中,被写下来的固定的值,称之为字面量
常用的6种值的类型
类型 | 描述 | 说明 |
数字(Number) | 整数 浮点数 复数 布尔 | |
字符串(String) | 描述文本的一种数据类型 | |
列表(List) | 有序的可变序列 | |
元组(Tuple) | 有序的不可变序列 | |
集合(Set) | 无需不重复集合 | |
字典(Dictonary) | 无序key-value集合 |
1.3.2 注释
单行注释#,建议在#和注释内容之间,间隔一个空格
多行注释 """ 或者三对单引号 '''
print("hello world")
1.4.变量与赋值
变量:通俗理解为存储程序数据的容器
定义格式 :变量名 = 数据
可以通过type()函数查看变量的类型
常用的数据类型:int,str,float,bool
变量名不能以数字开头,由于字母、数字、下划线组成
变量命名方式:驼峰命名、下划线命名
关键字不能作为变量名使用
标识符是大小写敏感的
import keyword
print(keyword.kwlist)
1.5 数据类型转换
函数 | 函数说明 |
int(x[,base]) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
str(x) | 将对象x转换为字符串 |
complex(real[,imag]) | 创建一个复数,real为实部,imag为虚部 |
repr(x) | 将对象x转换为表达式字符串 |
eval(x) | 计算在字符串中有效python表达式,并返回一个对象 |
tuple | 将序列s转换为一个元组 |
1.6 运算符
运算符 | 描述 | 示例 |
+ | ||
- | ||
* | ||
/ | ||
// | 取整数 | 9//2 输出结果 4 |
% | 取余 | |
** | 指数 | a**b 为10的20次方 |
1.7 字符串
多种定义形式
hello = '你好'
hello = "你好"
hello = """你好'""
字符串拼接:+,拼接只能用于字符串类型拼接,不能用于其他类型
字符串格式化
%表示占位
s表示将变量变成字符串放入占位的地方
class_num = 57
avg_sarlary = 155555
message = "编号:%s,薪水:%s" % (class_num,avg_salary)
print(message)
格式符号 | 转化 |
%s | 将内容转换成字符串,放入占位位置 |
%d | 将内容转换成整数,放入占位位置 |
%f | 将内容转换成浮点数,放入占位位置 |
1.8 格式化的精度控制
%5d:表示将宽度整数的宽度控制在5位,如11,设置为5d,会变成[空格][空格][空格]11
%5.2f: 表示将宽度控制位5,将小数点精度设置为2
小数点和小数部位也算入宽度计算,如11.345 设置%7.2f,结果是[空格][空格]11.35
%.2f: 表示不限宽度,只设置小数精度为2
是否有更加优雅的方式格式化呢?
有
通过:f"内容{变量}"的格式来快速格式化
这种方式:不理会类型;不做精度控制
1.9对表达式进行格式化
表达式:一条具有明确执行结果的代码语句 如1+1,5*2
1.10 数据输入(input)
数据输入:input 如 name = input() , name = input("你的名字?")
数据输出:print
1.11 if语句的基本格式
if 要判断的条件:
条件成立时,要做的事情
1.12 if else 判断
if 条件:
满足条件要做的1
满足条件要做的2
......
else:
不满足条件要做的1
不满足条件要做的2
......
1.13 if elif else判断
if 条件1:
条件1满足做的事情
...
elif 条件2:
条件2满足做的事情
...
else:
所有条件不满足做的事情
...
判断是互斥且有序的