python之数据类型详解
二.列表list (可以存储多个值)(列表内数字不需要加引号)
sort
s1=['a','b','zz','','!']
# s1.sort()
# print(s1) -->['!', '1', 'a', 'b', 'zz'] 列表排序,特殊字符不准,数字第一,字母第二,汉字第三
clear
s1.clear 清空列表所有元素,剩下[]
copy
res=s1.copy 复制一个列表,有返回值所以要res=
reverse
# s1=['a','b','zz','1','!']
# s1.reverse()
# print(s1)-->['!', '1', 'zz', 'b', 'a'] 从后往前输出
insert
# s1.insert(3,'hh')
# print(s1) --->作为第三个下标的元素输出,数字过大放最后面输出
count
# res=s1.count('a')--->统计元素次数,如果没此元素就会报错
# print(res)
index
# res=s1.index('zz') --->匹配元素对应下标
# #print(res)
append
# s1.append('mama') --->在元素最后追加,括号里是什么就追加什么。
# print(s1)
remove
# s1.remove('zz')
# print(s1) ---> ['a', 'b', '1', '!'] 去除指定的元素,一次只能删除一个
pop
# res=s1.pop(1)
# print(res) --->通过下标取出对应的元素,如果不指定则默认取最后一个。
extend
# s1.extend('2m1')
# print(s1) --->['a', 'b', 'zz', '1', '!', '2', 'm', '1'] 如果是字符串会拆分为单个字符输出
切片
# s1=['a','b','zz','1','!']
# res=s1[2:5]
# print(res) --->['zz', '1', '!'] 取下标2到5之间得元素,顾头不顾尾
# s1[2]='bb' --->['a', 'b', 'bb', '1', '!'] 将下标2对应得元素 重新赋值
# print(s1)
# 三 元组(可存储多个值,但只读不做修改,相同元素时,列表所占资源更多)
# tuple.index() --->根据元素匹配下标
# tuple.count()--->统计元素个数
四 字典 dict (储存多个值)
pop
# info={'name':'zz',
# 'age':18,
# 'high':188,
# 'gender':'man'
# }
# res=info.pop('name')
# print(info) --->{'age': 18, 'high': 188, 'gender': 'man'}
# print(res) --->zz(取出指定key对应的value)
popitem
# res=info.popitem()
# # print(res) ---->('gender', 'man')
# print(info) --->去除最后一个key:value后,剩下的输出
items
# res=info.items()
# print(res) --->dict_items([('name', 'zz'), ('age', 18), ('high', 188), ('gender', 'man')] 以元组形式展现
# print(type(res)) ----><class 'dict_items'>:字典类型
setdefault
# res=info.setdefault('ga',11) 设置的形式为(key,value)
# print(info) --->{'name': 'zz', 'age': 18, 'high': 188, 'gender': 'man', 'ga': 11} 设置默认值,如果有这个
# key,则不会生效,没有会添加到最后一行。
keys
# res=info.keys()
# print(res) -->字典内所有value输出info(values)
# print(res) --->dict_keys(['name', 'age', 'high', 'gender']) 所有keys输出
update
(老)info.update(info2)(新) 可以理解为将老的替换为新的,不同以新的为准
# print(info2) -->{'name': 'zz', 'high': 188, 'huhu': 19, 'gender': 'woman'}
# print(info) ----> {'name': 'zz', 'age': 18, 'high': 188, 'gender': 'woman', 'huhu': 19}
{}.fromkeys
# res={}.fromkeys('a',3)
# print(res) ---->{'a': 3} 快速定义一个词典 (('key','key'),value):定义多个item的字典
# res={}.fromkeys('a',3,'b',4) --->TypeError: fromkeys expected at most 2 arguments, got 4
get
res=info.get('name') 通过key来获取value值,如果没有key,则返回none
# print(res) --->zz
info[ ]
res=info['a'] 同info.get(),但是如果key不存在会报错
# # print(res) ---->KeyError: 'a'
info[ ]='value'
# res=info['a']='ggg' 可以赋值,注意格式
# print(info) ---->{'name': 'zz', 'age': 18, 'high': 188, 'gender': 'man', 'a': 'ggg'}
五 集合set(无序,不重复)
pop
# s1={'a','b','a','23',2,5}
# res=s1.pop()
# print(s1) 不指定随机取出少一个元素的集合 *
# # print(res) -->b 根据下标取出对应元素,不指定则随机取出一个元素
intersections
# s2={'a','b','a','23',2,3,4}
# res=s1.intersection(s2) ————>取两个集合的交集
difference
# res=s1.difference(s2) —————>set(3,4)输出一个不同的元素,即s1相比s2有3和4两个不同,
# res=s2.difference(s1) ——————> set(5) s2和s1比多了一个5
union
# res=s1.union(s2)
# print(res) ---> {2, 3, 4, 5, '23', 'a', 'b'} 并集
六 str和int(变成字符、整型)
# a=1.6
# # res=str(a) 变成字符串
# # print(res) --->1.1
#
# res=int(a) 取整型,而不是四舍五入
# print(res) ———>1
七 0、none、空值都为假,其余为真
# a= 1 (0,none,空值都为假,其余为真)
# if a:
# print('真')
# else:
# print('假') ---> IndentationError: expected an indented block(应为缩进块),此错误一般是因为缩进或者冒号等。
# 正确输出应该为:
# print('真') -->缩进4个空格,括号内以字符格式展现
# else:
# print('假') -->缩进4个空格,括号内以字符格式展现
八 字符串 str. (字符串多有返回值res)
isupper :判断是否为大写 ,字符串内逗号等不算在内
# s1=('A,bb,1')
# res=s1.isupper()
# print(res) -->False
lower :将字符串内英文全部变成小写
# res=s1.lower()
# print(res) --->a,bb, 数字等按原样输出
isdigit :判断是否全部为数字,逗号等也计算(布尔)
res=s1.isdigit()
# # print(res) -->False
isalpha:判断是否全英文,逗号等也计算(布尔)
s1=('A,bb')
# res=s1.isalpha()
# print(res) -->false 中间有, 判定为假
isalnum :判断是否为全数字,逗号等也计算(布尔)
# s1=('1,2')
# res=s1.isalnum()
# print(res) -->False 中间有逗号,判断为假
count :统计指定元素个数
s1=('hello,World')
# # res=s1.count('b')
# # print(res)
title :将字符串变成抬头格式
# res=s1.title()
# print(res) ---》Hello,World
istitle:判断是否为抬头 (布尔)
isspace:判断是否全为空格(布尔)
repace:代替(‘old’ ,‘new’,次数)
# replace:代替,('old','new',次数)
# s1=('hello,World')
# res=s1.replace('l','L',)
# print(res) --->heLLo,WorLd
join:定义一个join括号里面的字符串的分隔符
res=','.join('abc')
# print(res) ---->a,b,c 以,为分隔符隔开后面字符元素
# res=s1.join('')
# print(res) -->1hello,World2hello,World3 以s1为分隔符
split:在字符串内定义分割符,必须在字符串内存在,将字符串变成列表。格式为( ‘分割符’ , 次数 )
# res=s1.split('l',)以l为分割符,分割2次
# print(res) --->['he', '', 'o,World']
strip:去除两边相同的字符串,不指定则不去除,除非有空格
rstrip:去除右边字符
lstrip:去除左边字符
format:格式化
# {}做占位符,
# {}做一个占位符,{}做第二个占位符
# %s:字符串格式
# s1=('my name is %s,my age is %s')
# res=s1%('zz',) %s 作为占位符,%变量名( )
# print(res) --->my name is zz,my age is #
%d:整形格式
%f:浮点型
切片[ : ]
# [:]:切割,正向切顾头不顾尾,反向切顾尾不顾头(都是不顾右边)
# [:]:取后3个字符
# [:]:取前3个字符
# [ : : ] 切片并按照步长取值
下标:
.[下标] :匹配对应的元素
.[下标]+.[下标] :字符串拼接