Python 基础知识(持续更新中)

时间:2023-03-09 06:56:08
Python 基础知识(持续更新中)
内置数据类型:
    整型
    浮点型
    字符串
    布尔值
    空值 None
    列表 list
    元组 tuple
    字典 dict
    集合 set
Python 算数运算符:
运算符 描述 实例
+ a + b
- a - b
* a * b
/ a / b
% a % b
** a ** b
// 取整除 9 // 2 得 4.0
Python 逻辑运算符:
运算符 描述 实例
== 等于 a == b
!= 不等于 a != b
> 大于 a > b
< 小于 a < b
>= 大于等于 a >= b
<= 小于等于 a <= b
Python 赋值运算符:
运算符 描述 实例
= 赋值 c = a + b
+= 加法赋值 c += a 等效于 c =  c + a
-= 减法赋值 c -= a 等效于 c = c - a
*= 乘法赋值 c *= a 等效于 c = c * a
/= 除法赋值 c /= a 等效于 c = c / a
%= 余赋值 c %= a 等效于 c = c % a
**= 幂赋值 c **= a 等效于 c = c ** a
//= 整除赋值 c //= a 等效于 c = c // a
Python 逻辑运算符:
运算符 表达式 描述 实例
and x and y 与,x 和 y 两者均为 true 结果返回 true,其中一个为 false 返回结果则为 false (a and b)
or x or y 或,x 和 y 只要有一个为 true 返回结果为 true,两者均为 false 返回 false (a or b)
not not x 非,如果 x 为 true 则返回 false,反之如此 not (a and b)
Python 成员运算符:
运算符 描述 实例
in 如果在指定的序列中找到目标值则返回 true 否则返回 false x 在 y 序列中,返回 true
not in 如果在指定的序列中没有找到目标值则返回 true 否则返回 false x 在 y 序列中,返回 false
Python 身份运算符:
运算符 描述 实例
is  判断两个标识符是不是引用自一个对象 x is y,类似 id(x) == id(y) , 如果引用的是同一个对象则返回 true,否则返回 false
is not is not 是判断两个标识符是不是引用自不同对象 x is not y ,类似 id(a) != id(b),如果引用的不是同一个对象则返回结果 true,否则返回 false
Python 运算符优先级:
运算符
描述
**
指数 (最高优先级)
~ + -
按位翻转,一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //
乘,除,取模和取整除
+ -
加法减法
>> <<
右移,左移运算符
&
位 'AND'
^ |
位运算符
<= < > >=
比较运算符
<> == !=
等于运算符
= %= /= //= -= += *= **=
赋值运算符
is is not
身份运算符
in not in
成员运算符
not or and
逻辑运算符
类型转换:
    int(参数)    转换为 int 类型
    float(参数)    转换为 float 类型
    str(参数)    转换为 string 类型
    type(参数)    查看参数数据类型
    isinstance(参数,数据类型)    将参数与数据类比较,如果参数类型如数据类型相同返回 true,反之为 false。
BIF(built-in functions)内置函数:
    dir(__builtins)__)
    查看如何使用:
         help(内置函数名)
变量:
    在使用变量前必须先赋值。
    变量名可以包括字母、数字、下划线,不能移数字开头。
    变量名区分大小写。
原始字符串:
    r‘字符串’
三重引号字符串:
    如诗词等多行字符串,在前后添加三个引号即可。
三元表达式:
    result = x if x > y else y
等效于
    if x > y:
        result = x
    else
        result = y
assert 断言:
    当这个关键字后面的条件为 false 时,程序自动崩溃,并抛出 AssertionError 的异常。
    例如:
        assert 3 > 4
    应用场景:
        当去要确保程序中某个条件一定为 true 时才能让程序正常运行的话,通常使用 assert 关键字。
while 循环:
    语法:
        while 条件为 true:
            循环体
for 循环:
    语法:
        for 目标 in 表达式:
            循环体
range 循环:
    语法:
        range([start,] stop[,step=1]):
            循环体
    这个 BIF 有三个参数,中括号的参数表示可选参数。
    stop=1 表示第三个参数默认值是 1。
    range 这个 BIF 的作用是生成一个从 start 参数的值开始到 stop 参数的值结束的数字序列。
    通常搭配 for 循环使用,例如:
        for item in range(2,6):
            print(item)
    输出2到5到每个数字。
    如果 range 传三个参数则为:
        for item in range(1, 10, 2):
            print(item)
    输出1、3、5、7、9,最后一个参数为每次递增的参数。
list 列表:
 方法  
说明
 list.append(x)
将元素 x 添加至列表 list 尾部
 list.extend(L)
 将列表 L 中所有元素添加至列表 list 尾部
 list.insert(index, x)
 在列表 lis t指定位置 index 处添加元素x,该位置后面的所有元素后移一个位置
del list[x] 删除 list 中下标为 x 的元素
 list.remove(x)
 在列表 list 中删除首次出现的指定元素,该元素之后的所有元素前移一个位置
 list.pop([index])
 删除并返回列表 list 中下标为 index(默认为-1)的元素
 list.clear()
 删除列表 list 中所有元素,但保留列表对象
 list.index(x)
 返回列表 list 中第一个值为 x 的元素的下标,若不存在值为x的元素则抛出异常
 list.count(x)
 返回指定元素 x 在列表 list 中的出现次数
 list.reverse()
 对列表 list 所有元素进行逆序
 list.sort(key=None, reverse=False)
 对列表 list 中的元素进行排序,key 用来指定排序依据,reverse 决定升序(False),还是降序(True)
 list.copy()
 返回列表 list 的浅复制
列表分片(Slic):
    利用索引值,一次性获取多个元素。
字符串的方法:
capitalize()
把字符串的第一个字符改为大写
casefold()
把整个字符串的所有字符改为小写
center(width)
将字符串居中,并使用空格填充至长度 width 的新字符串
count(sub[, start[, end]])
返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,可选。
encode(encoding='utf-8', errors='strict')
以 encoding 指定的编码格式对字符串进行编码。
endswith(sub[, start[, end]])
检查字符串是否以 sub 子字符串结束,如果是返回 True,否则返回 False。start 和 end 参数表示范围,可选。
expandtabs([tabsize=8])
把字符串中的 tab 符号(\t)转换为空格,如不指定参数,默认的空格数是 tabsize=8。
find(sub[, start[, end]])
检测 sub 是否包含在字符串中,如果有则返回索引值,否则返回 -1,start 和 end 参数表示范围,可选。
index(sub[, start[, end]])
跟 find 方法一样,不过如果 sub 不在 string 中会产生一个异常。
isalnum()
如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False。
isalpha()
如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。
isdecimal()
如果字符串只包含十进制数字则返回 True,否则返回 False。
isdigit()
如果字符串只包含数字则返回 True,否则返回 False。
islower()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回 True,否则返回 False。
isnumeric()
如果字符串中只包含数字字符,则返回 True,否则返回 False。
isspace()
如果字符串中只包含空格,则返回 True,否则返回 False。
istitle()
如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回 True,否则返回 False。
isupper()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回 True,否则返回 False。
join(sub)
以字符串作为分隔符,插入到 sub 中所有的字符之间。
ljust(width)
返回一个左对齐的字符串,并使用空格填充至长度为 width 的新字符串。
lower()
转换字符串中所有大写字符为小写。
lstrip()
去掉字符串左边的所有空格
partition(sub)
找到子字符串 sub,把字符串分成一个 3 元组 (pre_sub, sub, fol_sub),如果字符串中不包含 sub 则返回 ('原字符串', '', '')
replace(old, new[, count])
把字符串中的 old 子字符串替换成 new 子字符串,如果 count 指定,则替换不超过 count 次。
rfind(sub[, start[, end]])
类似于 find() 方法,不过是从右边开始查找。
rindex(sub[, start[, end]])
类似于 index() 方法,不过是从右边开始。
rjust(width)
返回一个右对齐的字符串,并使用空格填充至长度为 width 的新字符串。
rpartition(sub)
类似于 partition() 方法,不过是从右边开始查找。
rstrip()
删除字符串末尾的空格。
split(sep=None, maxsplit=-1)
不带参数默认是以空格为分隔符切片字符串,如果 maxsplit 参数有设置,则仅分隔 maxsplit 个子字符串,返回切片后的子字符串拼接的列表。
splitlines(([keepends]))
在输出结果里是否去掉换行符,默认为 False,不包含换行符;如果为 True,则保留换行符。。
startswith(prefix[, start[, end]])
检查字符串是否以 prefix 开头,是则返回 True,否则返回 False。start 和 end 参数可以指定范围检查,可选。
strip([chars])
删除字符串前边和后边所有的空格,chars 参数可以定制删除的字符,可选。
swapcase()
翻转字符串中的大小写。
title()
返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串。
translate(table)
根据 table 的规则(可以由 str.maketrans('a', 'b') 定制)转换字符串中的字符。
upper()
转换字符串中的所有小写字符为大写。
zfill(width)
返回长度为 width 的字符串,原字符串右对齐,前边用 0 填充。