【python基础】三、基础复习 字符串 列表 元组 字典 集合

P47-P53 字符串
res = 'a' in 'abc'
res = 'a' not in 'abc'

# 切片 倒序
s = 'abcd'
a[2]
a[0:2]
a[::-1]
a[]

'{},{}'.format(xx,oo)   # 逐个匹配
'{1},{0},{2}'.format(xx,yy,zz) # 标号匹配


内建函数

capitalize()    # 首字母大写
title()     # f返回首字母大写的字符串
upper() 
lower()

# 查找相关
    in 查找 返回 true flase
find(str, beg=0, end=len(str))  # 返回 索引 ,无 -1
rfind() # right find 从右侧开始
lfind() # left find

index(str, beg=0, end=len(str)) # 找不到 抛出异常
rindex()    lindex()

replace(old, new, [max]) # max: 次数

编码

encode()
decode()

# gbk 中文
# gb2312 简体中文
# unicode
# utf-8 Unicode的升级版 国际标准

s = '你好'
rest = s.encode('utf-8')  # 中文在网络上传播,都需要编码,得到字节 b'\x 二进制字节 
ss = rest.decode('utf-8')   # 得到的字节 进行解码 得到字符串
startwith()     endwith()       # 判断是否是 以 xx 开头/结尾, 返回 true flase
isalnum()   isalpha()   isdigit()   isspace() 
#纯字母或数字  纯字母  纯数字
max()   min()   count()

join(seq)  # 连接字符,按某字符串为分隔符
new_str = '-'.join('abc')
# 得到的new_str 为 'a-b-c'

# 更常用于 列表
li = ['a','v','1','9']
result = '*'.join(li)
# 得到新的字符串 'a*v*1*9'

# 去除 字符串 空格
strip()
lstrip()
rstrip()

# 裁剪 分割
split()
P53-P56 作业 pass
列表 List
P51 - 67
del li[x]   # 删除
# 练习循环删除
xxx = []

xxx.append()    # 末尾追加
xxx.extend()    # 逐个追加,列表合并
new = xxx + ooo   # 列表合并
xxx.insert(1, 'xx') # 

sorted(list)    # 列表排序  python自带, 默认升序   reverse = Flase
sorted(list, reverse = True)    # 降序 排序

sorted(list)    # 函数
list.sort()     # 方法

# 列表函数方法:
del list[index]
remove('abc')    # 删除第一个匹配项, 成功无返回,找不到报异常
pop()   # 出栈 返回出栈元素
pop(index)  # 取出指定下标元素
clear() # 清除列表,无返回值

list.reverse()  # 反转
枚举
enumerate() # 将列表返回 下标 和 内容

for index,value in enumerate(list):
    print(index, value)
元组 ( )
P68 - 69
tuple # tuple 的元素不能增删改,只能查
(1,)    # 元组里只有一个元素
tup = tuple(list)   # 列表 转换为 元组

# 一对一
t1 = (2,3,6)
a, b, c = t1    # 元组 赋值 

# 多对多
t2 = (2,3,5,6,8,9)
a, *b, c = t2   # a=2, b=[3,5,6,8], c=9
*m = 4,5,6,7    # * 并且 赋值 为 装包
print(*b)   print(*[3,5,6,8])   # * 并且 输出 :拆包 散列值   

a,b,*c = (9,1)  # a=9, b=1, c=[] 

# 拆、装包符号 *

字典
P70 - P76
dict    key:value   键值对
# 定义
dict1 = {}
dict1 = dict()

dict2 = dict( [(k1,v1), (k2,v2) ] )     # 列表里两个 元组 强制转换 字典

# 增 改
dict1[key] = value  # 存在则更改,不存在则新增

dict.update(dict2)  # 字典不支持 { }+{ }  
new_dict = dict.fromkeys(list [,default])     # 列表转字典?

# 查
dict[key]   # 获取,不存在 抛异常
dict.get(key)   # 取不到,返回None
dict.get(key, xx)   # 取不到,返回默认值xx

# 删
del dect[key]   # 不存在,同查,抛异常
dict.pop(key [,default])   # 取出 + 删除;不存在:None 或 [默认值]
dict.popitem()  #  末尾删除 LIFO 
dict.clear()    # 清空

# 字典遍历
for k, v in dict2:
    print(k,v)  # 遍历 key-value
    
for i in dict2:
    print(i)    # 遍历key

# 字典函数:
for tup in dict2.item():
for key,value in dict2.item():

dict.item()     # 取出所有的key-value  列表(元组):[(k1,v1), (k2,v2), (k3,v3), (k4, v4)]
dict.keys()     # 取出所有key   列表
dict.values()   # 取出所有value 列表


集合 set

特点 P77-87

无需 不重复

增删改查
list1 = [1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1]
s1 = set(list1)

t = ('wbd','qwer')
s2 = set()
s2.add(t)    # 把元组当成整体 加入
s2.add(1116)
s2.update(s1)     # 合并 添加


#删
print(s2)
# s2.remove(1116)    # 删除不存在 抛异常KeyError 
s2.pop()    # 删除第一个元素,抛异常
s2.clear()
s2.discard(1116)    # 同 remove ,但不报错



set 不支持 + * 

* 差集 -  
difference()
print(s1,s3)
print(s3 - s1, s1 - s3)
print(s3.difference(s1), 
     s1.difference(s3))
  • 交集 &
print(s1.intersection(s3))
print(s3 & s1)
  • 并集 |
print(s1 | s3)
print(s1.union(s3))
  • ^ 对称差集 不同的元素
s1 ^ s3
s1.symmetric_difference(s3)

数据类型 可变不可变

  • 不可变:
    • 小整数对象池,id改变
    • int float str 元组tupke
  • 可变
    • dict list
    • 内容改变,id不变

类型转换

# 字符串转 其它
int(str)
dict(str)
list(str)
set(str)
tuple(str)

# 其他 转 字符串
str()    # 外层 加 引号 ' '

list --> set, tuple

set, tuple–> list # 加[ ]

dict -k-> list # 仅保存key到列表

在b站学习中,学习链接
欢迎 批评 指正

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值