仅字符串类型含有的方法
使用该方法可以进行格式化输出,常与print语句结合使用
例:
from datetime import datetime
new_time = datetime.now()
new_time_str = new_time.strftime("%Y-%m-%d %H:%M:%S")
print("当前的时间为:{}".format(new_time_str))
使用该方法可以使字符串整体大写/小写
例:
s = "aslhfsal"
print(s.upper()) #ASLHFSAL
print(s.lower()) #aslhfsal
使用该方法对字符首字母/末字母进行判断
例:
s = "ayudfhasl"
if s.startswith("y"):
print("首字母为y")
if s.endswith("l"):
print("末字母为l")
else:
print("未字母不为l")
else:
print("首字母不为y")
if s.endswith("l"):
print("末字母为l")
else:
print("未字母不为l")
使用该方法对于字符串进行去空白处理
例:
stra = " 3 2 "
print(stra.strip()) #3 2
print(stra.lstrip()) #3 2
print(stra.rstrip()) # 3 2
可以对字符串进行替换
例:
str_new = "sjfljaslfjsadasf"
print(str_new.replace("s","1")) #1jflja1lfj1ada1f
使用该方法将str_new中所有的s替换成了1
使用该方法判断字符串中是不是数字:
str_num = "12312"
if str_num.isdecimal():
print("{}是一个数字".format(str_num))
else:
print("{}不是一个数字".format(str_num))
使用该方法对字符串进行分割,使其转化为列表
str_num = "1 2 4 5 6 2 1 43 1 1" #各个数字之间由” “隔开
list_str = str_num.split(" ")
print(list_str) #['1', '2', '4', '5', '6', '2', '1', '43', '1', '1']
将列表转化为字符串
例:
new_list = ['1', '2', '4', '5', '6', '2', '1', '43', '1', '1']
new_str = "*".join(new_list)
print(new_str) #1*2*4*5*6*2*1*43*1*1
使用此方法对输入的字符进行编码处理(后续文件编写中会提及)
使用此方法对获得的字符串进行编译处理(后续网络编程中会提及)
使得字符串能够居中
例:
new_str = "md5"
print(new_str.center(12,"0")) #0000md500000
第一个参数为目标长度,第二个参数为填充的字符串
使用该方法使得目标字符串可以进行左/右对齐处理
例:
new_str = "md5"
print(new_str.ljust(10,"*")) # md5*******
print(new_str.rjust(10,"*")) # *******md5
对字符串填充0,使其达到预计长度
例:
str = "sdfj"
print(str.zfill(100)) #000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000sdfj
注意:字符串中还有很多方法,如insert(),find(),sort()...
此处仅写出个人认为较重要地进行讨论,其余的没有展示(下面数据类型的也一样)
多数类型都具有的方法
即使用len()方法来取得str的长度
例:
str = "sdfj"
print(len(str)) #4
即使用位置来获得字符串中的元素
例:
str = "sdfj"
print(str[1]) #d
仍旧是根据位置来获取元素,只是获取的个数,可以自己进行掌控
例:
new_str = "服务器"
print(new_str[:2]) #"服务"
print(new_str[:-1]) #"服务"
通过循环遍历整个字符串
例:
num = 0
new_str = "jfalsjdflasjdfal;sjlas"
for i in new_str:
print("第{}个字符是{}".format(num,i))
num += 1
结果:
在列表尾部进行追加
例:将列表new_list_num中的元素按照位置,数值重新拼成列表并追加到空列表new_list中
new_list = []
new_list_num = [1,21,3,1,31,21,13,13,31,1,1]
for i,j in enumerate(new_list_num,0):
list_tmp = ["位置:{}".format(i),"数值{}".format(j)]
new_list.append(list_tmp)
print(new_list)
对列表中的元素按照位置进行替换
例:
new_list = [i for i in range(9)]
print(new_list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]
new_list.insert(1,100)
print(new_list) #[0, 100, 1, 2, 3, 4, 5, 6, 7, 8]
根据元素的值进行删除
例:
new_list = [i for i in range(9)]
print(new_list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]
new_list.remove(8)
print(new_list) #[0, 1, 1, 2, 3, 4, 5, 6, 7]
根据元素的索引值删除元素
例:
new_list = [i for i in range(9)]
print(new_list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]
new_list.pop(4)
print(new_list) #[0, 1, 2, 3, 5, 6, 7, 8]
清空整个列表
例:
new_list = [i for i in range(9)]
print(new_list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]
new_list.clear()
print(new_list) #[]
对列表中的元素进行按照数字元素大小排序(仅当列表中全是数字类型元素是,才可以使用)
例:(默认为升序排列,可通过修改参数使之降序排列)
new_list = [1,23,1,13,1,435232,23]
print(new_list) #[1, 23, 1, 13, 1, 435232, 23]
new_list.sort()
print(new_list) #[1, 1, 1, 13, 23, 23, 435232]
new_list = [1,23,1,13,1,435232,23]
print(new_list) #[1, 23, 1, 13, 1, 435232, 23]
new_list.sort(reverse=True)
print(new_list) #[1, 1, 1, 13, 23, 23, 435232]
即使用len()方法来取得列表的长度
new_list = [1,23,1,13,1,435232,23]
print(len(new_list)) #7
即使用位置来获得列表中的元素
new_list = [1,23,1,13,1,435232,23]
print(new_list[2]) #1
仍旧是根据位置来获取元素,只是获取的个数,可以自己进行掌控
new_list = [1,23,1,13,1,435232,23]
print(new_list[2:]) #[1, 13, 1, 435232, 23]
通过循环遍历整个列表
j = 0
new_list = [i for i in range(10)]
for i in new_list:
print("第{}个元素的阶乘为:{}".format(j,i**2))
j += 1
执行结果:
无私有方法,比较简单,但是需要注意,在元组中只有一个元素时,要加“,”
即使用len()方法来取得元组的长度
new_touple = ("asdf",32,12312,"sadg",["ahdsl"])
print(len(new_touple)) #5
即使用位置来获得字符串中的元素
new_touple = ("asdf",32,12312,"sadg",["ahdsl"])
print(new_touple[3]) #"sadg"
仍旧是根据位置来获取元素,只是获取的个数,可以自己进行掌控
new_touple = ("asdf",32,12312,"sadg",["ahdsl"])
print(new_touple[3:]) #('sadg', ['ahdsl'])
通过循环遍历整个元组
new_touple = ("asdf",32,12312,"sadg",["ahdsl"])
for i in new_touple:
print(i)
运行结果:
获取字典中的所有键,最后输出一个伪列表,但是仍可以进行for循环
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
tep_list = new_dict.keys()
print(tep_list) #dict_keys(['name', 'age', 'habby', 'exercise'])
for i in tep_list:
print(i) #name age habby exercise
获取字典中的所有值,最后输出一个伪列表,但是仍可以进行for循环
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
tep_list = new_dict.values()
print(tep_list) #dict_values(['大侠', 18, '唱,跳', '篮球'])
for i in tep_list:
print(i) #"大侠" 18 “唱,跳” “篮球”
元组形式输出字典中的键与值,并先使两者构成元组后,所有元组最后形成一个列表
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
tep_list = new_dict.items()
print(tep_list) #dict_items([('name', '大侠'), ('age', 18), ('habby', '唱,跳'), ('exercise', '篮球')])
for i in tep_list:
print(i)
由键取得对应字典中的值,与dict[键]功能相同
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
name = new_dict.get('name')
print(name) #"大侠"
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
name = new_dict['name']
print(name) #"大侠"
更新字典,若字典中有对应键,则相当于对字典进行修改,若无对应键,则相当于对字典进行添加
#对其进行更新
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
new_dict.update({'name':"ikun"})
print(new_dict) #{'name': 'ikun', 'age': 18, 'habby': '唱,跳', 'exercise': '篮球'}
#对其进行添加
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
new_dict.update({'mark':"ikun"})
print(new_dict) #{'name': '大侠', 'age': 18, 'habby': '唱,跳', 'exercise': '篮球', 'mark': 'ikun'}
使用len()函数计算字典的长度
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
print(len(new_dict)) # 4
通过循环来取得字典中的所有键/值
new_dict = {
'name':"大侠",
'age':18,
'habby':"唱,跳",
'exercise':"篮球"
}
for key in new_dict:
print("键:{},值:{}".format(key,new_dict[key]))
使用此方法来获取两个集合的交集
new_set_2 = {45,324,13423,1,12,3,2,"sd"}
new_set_1 = {1,212,12,2,"asdf"}
new_set = new_set_1.intersection(new_set_2)
print(new_set) #{1, 2, 12}
求两个集合的差集
注意:此时参数的位置不同,则结果也不相同
new_set_2 = {45,324,13423,1,12,3,2,"sd"}
new_set_1 = {1,212,12,2,"asdf"}
new_set_3 = new_set_1.difference(new_set_2)
new_set_4 = new_set_2.difference(new_set_1)
print(new_set_3) #{'asdf', 212}
print(new_set_4) #{3, 324, 'sd', 45, 13423}
求两个集合的并集
new_set_2 = {45,324,13423,1,12,3,2,"sd"}
new_set_1 = {1,212,12,2,"asdf"}
new_set_tmp = new_set_2.union(new_set_1)
print(new_set_tmp) #{1, 2, 3, 324, 'asdf', 12, 45, 13423, 'sd', 212}
添加新元素到集合中
当加入的元素为集合中已有的元素时,集合不发生变化,体现了集合的不可重复性
new_set = {'saf','asdf',12,213,124}
new_set.add("ashdfsadfl")
print(new_set) #{124, 'asdf', 'ashdfsadfl', 'saf', 213, 12}
new_set = {'saf','asdf',12,213,124}
new_set.add(12)
print(new_set) #{124, 'asdf', 'saf', 213, 12}
使用len()函数实现对集合长度的测量
new_set = {'saf','asdf',12,213,124}
print(len(new_set)) # 5
使用循环遍历整个集合中的所有元素
new_set = {'saf','asdf',12,213,124}
for i in new_set:
print(i)
运行结果: