1 字符串内置方法(了解)
1.1 字符串的查找 字符串内部的字符
【1】find方法
name = "hello baby"
# 默认是从左向右找并且返回当前字符在字符串内部的索引坐标
print(name.find("a")) # 7
name = "hello baby"
# 默认只能找一次,找到就不找了
print(name.find("b")) #6
name = "hello baby"
#可以指定寻找的区间,在区间内寻找字符
print(name.find("b",7,-1)) # 8
# 可以指定寻找的方向 从右向左找
name = "hello baby"
print(name.rfind("b")) # 8
# 找不存在的字符不会报错而是返回了 -1
name = "hello baby"
print(name.rfind("n")) # -1
【2】index方法
name = "hello baby"
# index 查找不存在的字符就会报错
print(name.index("n")) # 报错
name = "hello baby"
#默认从左向右并且只查找一次
print(name.index("b")) #6
name = "hello baby"
# 控制查找的方向,从右向左找
print(name.rindex("b")) # 8
name = "hello baby"
# 可以指定寻找的区间
print(name.rindex("b",7,-1))
1.2 计算当前字符在字符串中出现的次数
name = "hello baby"
# 计算当前l在字符串中的出现的次数
print(name.count("l")) #2
name = "hello emotion entuer"
# 最左侧的e的索引
print(name.find("e")) #1
# 最右侧e的索引位置
print(name.rfind("e")) #18
name = "hello mation entuer"
# 找中间的 e 的索引位置
print(name.rfind("e",name.find("e")+1,name.rfind("e"))) #13
1.3 填充字符串
【1】填充两侧
name = "baby"
# (填充的长度[算上原本字符串长度填充后的长度],填充的字符)
# 如果是偶数则两侧填充的长度一致
print(name.center(len(name)+2,'$')) #$baby$
# 如果是奇数,左少右多
name = "happy"
print(name.center(len(name)+5,'*')) #**happy***
【2】只填充右侧 l 右对齐
name = "happy"
print(name.ljust(len(name)+5,'*')) #happy*****
【3】只填充左侧 r 左对齐
name = "happy"
print(name.rjust(len(name)+5,'*')) #*****happy
【4】补充字符串不够的长度用 0 补齐
name = "happy"
print(name.zfill(len(name)+5)) #00000happy
1.4 制表符
# 默认代表一个空格
print(len('happy hello')) # 11
name = 'dream \thello'
print(name) #dream hello
print(len(name)) #12
1.5 首字母大写
sentence = 'my name is dear'
# 【1】一个句子的首字母大写
print(sentence.capitalize()) #My name is dear
# 【2】一个句子中的每一个单词的首字母大写
print(sentence.title()) #My Name Is Dear
1.6 单词大小写翻转
sentence = 'Dear'
print(sentence.swapcase()) #dEAR
1.7 判断字符串类型
name = 'Happy123'
name_one = 'Happy'
name_two = 'Happy&'
print(name.isalnum()) # 字符串中既可以包含数字也可以包含字母,True
print(name_one.isalpha()) # 字符串中只包含字母,True
print(name_two.isidentifier()) # 字符串是否是合法标识符,False
print(name.islower()) # 字符串是否是纯小写,False
print(name.isupper()) # 字符串是否是纯大写,False
print(name.isspace()) # 字符串是否全是空格,False
print(name.istitle()) # 字符串中的单词首字母是否都是大写,True
2 列表的内置方法
【一】列表
name_list = ['pai', 'hope']
【二】必须记住的内置方法
只要可迭代都能转
【1】类型强制转换
(1)字符串
可以,并且转换后的列表是字符串的每一个字符
name = 'pai'
print(list(name)) #['p', 'a', 'i']
(2)元组
可以,转换后的列表中的元素类型和转换之前一致
num_tuple = (1, 2, 3, 4)
print(list(num_tuple)) #[1, 2, 3, 4]
(3)字典
可以,转换后的列表中存储的元素是当前字典的键
name_dict = {'username': 'pai', 'password': '521'}
print(list(name_dict)) #['username', 'password']
(4)集合
可以,并且是基于集合去重特性后转换出,如果原来的会继承集合乱序的特性
num_set = {1, 2, 3, 6, 4,6, 6, 6}
print(list(num_set)) #[1, 2, 3, 4, 6]
(5)range关键字
也可以转换为列表,并且元素是指定区间内的每一个元素
print(list(range(0, 5))) #[0, 1, 2, 3, 4]
(6)数字不可以
数字包含了整数和浮点数,所以整数和浮点数都不可以
print(list(1))
(7)布尔也不可以
print(list(True))
【2】支持索引取值
如果取得索引大于总的数据长度救护报错
num_list = [1, 2, 3]
print(num_list[4]) #Error
【3】切片
也是顾头不顾尾
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(num_list[0:5:2]) #[1, 3, 5]
【4】计算列表内的元素个数用 len
【5】成员运算
num_list = ['0', 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(1 in num_list) #True
print(0 in num_list) #False
【6】列表操作 增,删,查,改
(1)增加
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# append ;
# 默认追加到最后 没有返回值 影响到的是原来的列表
num_list.append(77)
print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 77]
# extend
# 可以追加多个元素 可迭代
num_list.extend([11, 22]) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22]
num_list.extend((22, 3)) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 22, 3]
# 字符串虽然可以迭代但是不行
num_list.extend('happy')
print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 'h', 'a', 'p', 'p', 'y']
# insert
# 可以按照索引位置插入元素
# 参数(索引位置,元素)
num_list.insert(0, 666)
print(num_list) #[666, 1, 2, 3, 4, 5, 6, 7, 8, 9]
(2)删除
# del 列表[索引]
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
del num_list[0] #[2, 3, 4, 5, 6, 7, 8, 9]
# pop() ;弹出
# 可以接收返回值,并且返回值就是你删除的哪个元素
print(num_list.pop())
# 可以放索引位置
print(num_list.pop(0)) #1
print(num_list) #[2, 3, 4, 5, 6, 7, 8, 9]
# remove : 必须放定值 没有返回值
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
num_list.remove(2)
print(num_list) #[1, 3, 4, 5, 6, 7, 8, 9]
【7】颠倒元素
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 'happy']
print(num_list.reverse())
print(num_list) #['happy', 9, 8, 7, 6, 5, 4, 3, 2, 1]
【8】对列表中的元素进行排序
num_list = [1, 4, 8, 7, 9, 6, 4, 2, 58, 3, 6, 94, 16, 4, 6, 5, 456, 454, 56, 45, 123132, 412313, 55]
print(num_list.sort())
print(num_list)
#[1, 2, 3, 4, 4, 4, 5, 6, 6, 6, 7, 8, 9, 16, 45, 55, 56, 58, 94, 454, 456, 123132, 412313]
# 将排序后的结果翻转
print(num_list.sort(reverse=True))
print(num_list)
#[412313, 123132, 456, 454, 94, 58, 56, 55, 45, 16, 9, 8, 7, 6, 6, 6, 5, 4, 4, 4, 3, 2, 1]
# sorted函数 : (列表,翻转) 有返回值
num_new = sorted(num_list, reverse=True)
print(num_new)
#[412313, 123132, 456, 454, 94, 58, 56, 55, 45, 16, 9, 8, 7, 6, 6, 6, 5, 4, 4, 4, 3, 2, 1]
【9】遍历循环列表
for 直接遍历列表 遍历索引range
while 定义起始值 < 列表最大长度 按照索引取值
【10】列表的步长
num_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# 从头去到尾但是步长为2
print(num_list[::2]) #[1, 3, 5, 7, 9]
# 从头取到尾但是是倒着取
print(num_list[::-2]) #[9, 7, 5, 3, 1]
# 列表翻转
print(num_list[::-1]) #[9, 8, 7, 6, 5, 4, 3, 2, 1]
3 字典的内置方法
【一】字典
字典中的数据都是 k:V键值对,不支持索引取值 只能支持键值对取值
【二】内置方法
user_data = {'username': "pai", 'password': '521'}
【1】查
(1)[键] : 如果这个键不存在 就会报错
print(user_data['username']) #pai
(2).get(键) : 如果这个键不存在 不会报错并且返回的是 None
print(user_data.get('password')) #521
print(user_data.get('age')) #None
【2】增加
(1)字典[键]=值
# 这种方式添加的键值对。字典中存在该键对应的值,就会覆盖掉,如果不存在,会将键值对新增进去
user_data['age'] = 18
user_data['username'] = 'opp'
user_data['password'] = 666
print(user_data) #{'username': 'opp', 'password': 666, 'age': 18}
(2)setdefault() :有返回值并且返回值是加进去的值
print(user_data.setdefault('hobby', 'music'))
print(user_data)
#{'username': 'pai', 'password': '521', 'hobby': 'music'}
(3)update方法
# 第一种方案放一个新的字典
data_user = {
'addr': "上海",
"username": "pai"
}
user_data.update(data_user)
print(user_data)
user_data = {'username': "pai", 'password': '521'}
user_data['age'] = 18
user_data['username'] = 'opp'
user_data['password'] = 666
data_user = {
'addr': "上海",
"username": "pai"
}
user_data.update(data_user)
print(user_data)
#{'username': 'pai', 'password': 666, 'age': 18, 'addr': '上海'}
第二种方案直接放关键字=值
user_data.update(age=999)
print(user_data)
#{'username': 'pai', 'password': 666, 'age': 999, 'addr': '上海'}
【3】删除
(1)del 删除字典[键]
del user_data['username']
print(user_data) #{'password': 666, 'age': 999, 'addr': '上海'}
(2)pop(键) : 将字典中指定的键对应的值弹出
print(user_data.pop('addr')) #上海
print(user_data) #{'username': 'pai', 'password': 666, 'age': 999}
(3)clear : 清空字典
print(user_data.clear()) # None
print(user_data) #{}
(4)popitem : 弹出键值对 默认弹最后的
print(user_data.popitem()) #('addr', '上海')
print(user_data) # {'username': 'pai', 'password': 666, 'age': 999}
【3】计算元素个数
print(len(user_data))
【4】成员运算
字典中默认运算的是键
【5】键对
user_data = {'username': "pai", 'password': '521'}
print(user_data.keys()) #dict_keys(['username', 'password'])
print('password' in user_data.keys()) #True
【6】值对
user_data = {'username': "pai", 'password': '521'}
print(user_data.values()) #dict_values(['pai', '521'])
print('666' in user_data.values()) #False
【7】键值对
print(user_data.items())
#dict_items([('username', 'pai'), ('password', '521')])
print('666' in user_data.values()) #False
for key, value in user_data.items():
print(key, value)
# username pai
# password 521
标签:内置,name,data,list,num,user,print,方法
From: https://www.cnblogs.com/zyb123/p/18111321