Python阶段性总结

1、输出 print(“ “)
  • 默认print在尾部会加换行符
  • 想要不换行:print(” “,end=” “)
2、输入 input(“ “)

用户输入的内容本质上都是字符串

3、条件语句(注意统一缩进)
if A:
    Balabala
elif B:
    Balabala
else C:
    Balabala
4、while循环
while 条件:
    ...
    ...
    ...

break:在while循环中终止

continue:结束本次,开始下次

5、字符串的三种格式化

1、%s 字符串,%d 十进制数字

name = "马佳凯"
age = 18
text = "我叫%s,今年%d岁"%(name,age)

一旦字符串格式化中存在百分比的显示,以%%实现输出%

2、.format形式

text = "我叫{0},今年{1}岁,真实姓名是{0}".formate("马佳凯",18)

3、最新形式

action = "跑步"
text = f"我喜欢{action}"
6、算术符

1、// 取整数

2、== 比较是否相等

3、是否包含敏感词

in

not in

4、、not 取反

7、字符串

功能的一般形式: “xxxxx”.功能(…)

独有功能:
  • 查找(.startwith() .endwith())
v1 = "叨逼叨"
result = v1.startwith("叨逼")
print(result)
  • 字符串是否为十进制数
    .isdecimal
  • 去除字符串边的空格、换行符、制表符 .strip()
    去除字符串边的空格、换行符、制表符 .lstrip()

去除字符串边的空格、换行符、制表符 .rstrip()

  • 字符串变大写 .upper()
    字符串变小写 .lower()
  • 内容替换 value = “ 。。。。”.replace(“A”,“B”) 将A替换为B
  • 字符串切割
    例:.split(’|’)
data = "工藤新一|好帅|啊"
result = data.split('|')
print(result)
result[0]=
result[1]=
result[2]=

(’|’,n) 从左到右切n个

.rsplit(’|’,n) 从右向左切n个

  • 字符串拼接
data = ["小兰","好漂亮","啊"]
v1 = "*".join(data)
print(data)          #小兰*好漂亮*啊
  • 格式化字符串(见字符串的三种格式化)
  • 字符串转换为字节
data = "灰原" #unicode,字符串类型
v1 = data.encode("utf-8")  #字节类型
v2 = data.encode("gbk")

字节转化为字符串 .decode()

  • 将字符串内容居中 .center(20,*)
    将字符串内容居左 .ljust(20,*)
    将字符串内容居右 .rjust(20,*)
  • 填充0 .zfill(数字)
公共功能:
  • 长度
data = "步美"

value = len(data)
  • 获取字符串中的字符,索引
value = "柯南"
message[0]
message[1]
  • 获取字符串中的子序列,切片
message = "真相只有一个"
print(message[0:2]) #真相只
print(message[3:-1])#有一个
  • 步长:跳着取字符串中的内容
value[0:5:2]
value[5:0:-1]  #前取后不取
  • 循环:

  • for循环:
message = "新一和小兰我嗑定了"
for char in message:
    print(char)
  • range循环:创建一系列的数字
range(10)  #[0,1,2,3,4.....9]
range(1,10) #[1,2,3,4.....9] 前取后不取
range(1,10,2) #[1,3,5,7,9]
  • for+range
8、元组:有序不可变 tuple

建议在元组的最后加一个逗号,元组元素不允许修改,列表允许修改。

9、集合(set):无序、可变、不允许数据重复的容器

特点:1、无法通过索引取值 2、可以添加和删除元素 3、集合的元素只能是int、bool、str、tuple

定义空集合时,只能使用v=set(),而不能使用{}。

  • 添加 .add()
  • 删除 .discard()
  • 交集
    例:
s1 = {"工藤新一","毛利兰"}
s2 = {"新一","毛利兰"}
s3 = s1&s2
print(s3)
  • 并集 s1|s2
  • 差集 s3 = s1.difference(s2) s1中有但是s2中没有
10、字典:无序、键不重复且元素只能是键值对的可变的容器
data = {"k1":1,"k1":2}   #"k1"是键,1是值

注意:1、字典是一个容器 2、元素必须是键值对 3、键不重复,否则会被覆盖 4、字典的键必须可哈希(字典,列表,字符串)

  • 独有功能:
    1、获取值 .get()
info = {"age":12,"status":True,"name":"工藤新一"}
data = info.get("name")   #"工藤新一"
data = info.get("角色","小五郎")

2、所有的键 .keys()

3、所有的值 .values()

4、获取所有的键值

  • 公共功能
    1、求并集 v3 = v1|v2 (生成新字典)

2、长度 len()

3、是否包含

4、索引(通过键) info[" "] //类似于.get()

5、根据键修改值和添加值、删除键值对

info[" “] = " " del info[” "] = " "

6、for循环

11、列表:有序且可变,可多个不同类型
  • 独有功能
    1、追加 .append()
    2、批量追加 .extend() 将列表中的元素加入到另外一个列表中
    例:tools.extend(weapon) 将weapon加到tools中
    3、插入 .insert() 在原列表的指定索引位置插入值
    user_list = [“毛利”,“事务所”]
    user_list.insert(0,“名侦探”)
    print(user_list)

4、删除(从左到右找到的第一个符合的元素删除).remove()

5、根据索引位置删除 .pop() 不仅可以删除,还可以提取出来

6、清空原列表 .clear()

7、根据值获得索引(从左到右第一个) .index()

8、列表元素排序

.sort() 从小到大

.sort(reverse = True) 从大到小

9、反转列表 .reverse()

  • 公共功能
    1、相加
    2、相乘 列表*整形
    3、in 来判断元素是否在列表中
    4、获取长度 len()
    5、索引 可修改,可删除