导图社区 Python基础
Python基础的知识总结,包括数据类型、运算符、基础语法、逻辑结构、函数、读写文件等内容,逻辑清晰。
编辑于2023-01-20 09:41:02 吉林Python
数据类型
标准数据类型
string字符串
索引
用[]选取,左从0开始,右从-1开始
运算符
[:]
截取一部分,左闭又开
[]
通过索引获取字符
*
重复输出
in,not in
成员运算
r
取消转义
+
拼接
要保证每个子字符都为字符串类型
f-string
f'{1+2=}'------>1+2=3
转义字符
取消转义
r
\开始
r
将r后面的字符移到开头,并替换字符
v
纵向制表符
\t
横向制表符
\
续行符
\b
退格
n
换行
f
换页
\000
空
内建函数
capitalize
第一个字母大写
center
返回指定宽度居中字符串
count
返回字符串中某字符串出现次数
encode
返回指定编码格式字符串
endswith
检查字符串是否以某字符串结尾
expandtabs
将tab转换为空格
find
检测字符串中是否包含某字符串
index
跟find相同,但找不到会返回错误
isalpha
检测字符串是否为全字母或中文
isalnum
检测字符串是否为全数字或字母
isdigit
检测是否全是数字
islower
检测是否全小写
isnumeric
检测字符串是否只包含数字
isspace
是否只包含空白
istitle
检测是否标题化
isupper
检测是否为全大写
join
将所有元素用指定字符连接成新字符串
len
返回长度
ljust
返回字符串填充至指定宽度后左对齐的字符串
lower
全部字符小写
lstrip
去掉左面空格或指定字符
maketrans
max
返回字符串中最大字母
min
返回字符串中最小字母
replace
替换字符串中的字符
rfind
从右面find
rindex
从右面index
rjust
删除右面空格或指定字符
split
用指定字符分割字符串
splitlines
按照转义字符分割,返回列表
startswith
检测是否以某字符开头
strip
去掉两侧空格
swapcase
字符串大小写转换
title
标题化字符串
translate
子主题
upper
全大写
zfill
将字符串右对齐扩展至指定宽度,并填充0
isdecimal
检测是否包含十进制字符
str()
format()
字符串.format()
作用
连接多个字符
格式化字符串
格式化字符串
p
用十六进制数格式化变量地址
e
用科学计数法格式化浮点数
f
格式化浮点数可指定精度
c
格式化字符及其ASCII码
X
无符号十六进制大写
u
格式化无符号整数
x
无符号十六进制
s
格式化字符串
o
无符号八进制
d
格式化整数
使用%
辅助指令
m.n
m最小总宽度,n小数点后面的位数
0
显示数字前面用0替换空格
*
定义宽度或小数精度
#
八进制数前面显示0
<sp>
整数前面显示空格
%
%%输出单一%
+
显示数字+号
(var)
映射变量
-
左对齐
number数字
bool
为整数子集,可以和数字相加
float()
complex
int()
函数
modf()
返回数的整数部分和小数部分
round()
返回指定位数的四舍五入值
ceil
返回上入整数
floor()
返回下舍整数
max(),min()
最大,最小值
exp()
返回e的x次幂
abs(),fans()
返回绝对值
log(),log10()
随机数函数
randrange(start,stop,step)
指定范围和基数序列中随机选一个
uniform()
随机生成下一个范围内实数
chioce()
从序列中随机挑一个元素
random()
随机生成下一个实数[0,1)
shuffle()
序列所有元素随机排列
seed()
改变种子
三角函数
tuple元组
可用+拼接,不可更改
索引、切片方法与列表相同
用()创建元组,只有一个元素时后面要加,
索引与字符串方法相同
不可变
list列表
复制,拼接与字符串一致
索引左侧从0开始,右侧从-1开始
切片用[:]
用[],list()创建
可用+拼接,元素可更换,可用del删除元素
函数
len
获取长度
max,min
返回最大值,最小值
list
创建或转换成列表
方法
append
末尾添加对象
count
统计某个元素出现的次数
extend
在末尾追加另一个序列中的多个值
index
从列表中找到某一值第一次出现的索引位置
insert
将对象插入列表
pop
移除列表中末尾的一个或几个元素并返回
remove
移除列表中某个值的第一个匹配项
reverse
反向排列列表
sort
排序
clear
清空列表
copy
复制列表
列表推导式
用于通过某些操作,将一个列表的所有元素,转换成一个新列表的元素
列表推导式都在for之后跟一个表达式,然后有零到多个for,if子句
子主题
dictionary字典
{},dic()键值对用:分割,之间用,分割
字典无序,无法排列,字典的值只能通过键获取,键必须唯一
使用 字典名[′键′]= 方法添加元素,或替换现有元素
用in判断键是否存在于字典中
函数
len
获取字典长度,即键值对个数
str
将字典转换成字符串
type
方法
clear
清空字典
copy
浅复制字典
fromkeys
创建字典
get
返回指定键的值,如果不存在返回指定的默认值
key in dict
判断字典中是否有某键
items
以列表返回一个视图对象
keys
返回键
setdefault
与get类似,但键不存在则添加键,并赋予指定值
update
将字典2的键值对更新到字典1
values
返回所有值
pop
删除指定键,并返回对应键的值
popitem
随机删除并返回字典中的一对键值对
set集合
使用{},set()创建集合,但创建空集合必须使用set
集合无顺序,不重复,不能切片、索引
关系测试
方法
add
添加元素
clear
移除所有元素
copy
拷贝一个集合
difference
返回多个集合的差值
difference_update
移除集合中的元素,该元素在指定集合也存在
discard
删除集合中指定元素
intersection
返回集合的交集
intersection_update
返回集合中的交集
isdisjoint
判断两个集合是否包含相同元素
issubset
判断指定集合是否为该方法参数集合的子集
issuperset
判断方法参数的集合是否为指定集合的子集
pop
随机移除元素
remove
移除指定元素
symmetric_difference
返回两个集合中不重复的元素集合
symmetric_difference_update
移除当前集合中在另一个指定集合相同元素,并将另一个指定集合中不同的元素插入到当前集合
union
返回两个集合的并集
update
给集合添加元素
可变
相关函数
判断类型
isinstance
返回布尔值
type
返回值类型
删除变量
del语句
运算符
运算
//
除法,结果为int,舍弃小数部分
/
除法,结果为float
+
加法
-
减法
*
乘法
%
取余
**
乘方
比较
>=
大于等于
<=
小于等于
!=
不等于
==
等于
>
大于
<
小于
位运算符
<<
>>
&
|
^
逻辑运算符
and
or
not
成员运算
in
not in
身份运算符
is
is not
基础语法
标识符
以字母开头的字母,数字,下划线
区分大小写
多行语句
使用\分割
在括号内的语句不需要\
注释
以#开头,或者三个引号
多变量赋值
a=b=c=1
a,b,c =1,2,3
行与缩进
制表符或4个空格
调用模块
import
from… import…
数字类型
complex(复数)
int
bool
float
命令行参数
使用—h查看
一行多条语句
使用;分割
用户输入
input函数
返回为字符串
输出(打印)
print函数
end关键字
默认end = '\n'
输出后换行
可以使用‘ ,' ' ' 或者空''
将结果输出到同一行,并用指定符号分割
赋值
=
保留字符
字符串
逻辑结构
条件控制
if …:
if…: else: …
if…: elif…: else
if嵌套
循环结构
while
while 判断语句: 执行语句
无线循环
while True:
while…else语句
for
for … in …:
range函数
break
结束整个循环
continue
结束本轮循环,继续下一轮循环
pass
不做任何操作
顺序结构
程序按顺序执行
函数
定义一个函数
def开头接函数名称和()
传入参数和自变量必须在()中,()中可以定义形参
第一行可以插入文本,作为函数说明
函数以:起始,并需缩进
用return给出返回值
调用函数
在程序过程中使用函数名调用函数,并给出所需实参
参数传递
可变对象
引用传递
不可变对象
值传递
参数
必要参数
必须以正确顺序,全部传入
关键字参数
能够更准确的配对传入参数,可以改变顺序
默认参数
如果不传入,则使用默认值
不定长参数
不确定参数个数
不定长参数以*定义
函数内用元组形式储存传入的所有参数
不定长参数以**定义
函数内使用字典储存参数
定义参数是单独出现*,则*后的参数必须用关键字传入
匿名函数
使用lambda创建
格式为lambda… :…
冒号前公式形参
冒号后为表达式,可返回结果
只能使用表达式,赋值、循环、选择语句不能出现,但可以使用推导式和条件复制预计来部分实现功能
list(filter(lambda x : sum(i if i%2 == 1 else 0 for i ni x)>5,my_list))
读写文件
Open(filename,mode)
r
只读
rb
以二进制形式打开文件
r+
打开一个文件,用于读写
rb+
以二进制形式打开一个文件用于读写
w
如果文件存在,则打开文件用于写入,原文件内容被删除。如果文件不存在,则创建一个文件
w+
打开一个文件,用于读写,原文件内容被删除,文件不存在,主要创建一个文件
a
打开一个文件,用于追加,如果文件不存在,则创建新文件
a+
打开一个文件,用于读写,如果文件存在,文件指针将放在文件结尾,文件不存在,则创建文件
方法
read
子主题
readline
读取整行
close
关闭文件
flush
刷新内部缓存
fileno
返回一个整形的文件描述符
isatty
文件是否连接到一个终端设备
seek
移动指针到指定位置
tell
返回指针当前位置
truncate
从开始截取到指定位置,之后的删除
write
将字符写入文件
writeline
写入一个序列字符串列表
推导式
结构
列表推导式
[func(i) for i in list]
集合推导式
{func(i) for i in list}
字典推导式
{i:func(i) for i in list}
打包函数
zip
能够得到一个可迭代的zip对象