不可变类型:整型,字符串,元组
可变类型:列表,字典
1. 数字
整数 int(integer)
整型
长整型
(在pyhton3中已经不区分整型与长整型,统一都叫整型)
浮点型 float
复数 complex
2. 布尔值
真 或 假 (True or False)
0 或 1
3. 字符串 str(string)
4. 列表和元组
列表:
查
索引(下标),都从0开始
切片
.count 查某个元素出现的次数
.index 根据内容找其对应的位置
in 判断值是否存在
增加
.append() 追加
.insert() (index, “内容”)
.extend() 扩展
修改
a[index] = “新的值”
a[start : end] = [a, b, c]
删除
.remove("内容")
.pop(index)
del a, del a[index]
.clear 清空
排序
.sort()
.reverse()
身份判断
a = ["alex", "bill", "cindy", "ellen", "frank"] #增删改查 #查 切片 print(a[1:3]) #左包括,右不包括 print(a[1:]) #取到最后 print(a[1:-1]) #取到倒数第二个值 print(a[1:-1:1]) #从左到右一个一个地取值 最后一个1是步长 print(a[1::2]) #从左到右隔一个取一个值 print(a[3::-2]) b = a[3::-1] print(b) #['ellen', 'cindy', 'bill', 'alex'] #增 append insert a.append('grace') #默认插入到最后一个位置 print(a) a.insert(1,'hellen') #将数据插入到任意一个位置 print(a) #改 a[1] = 'jerry' print(a) a[1:3] = ['a','b'] print(a) #删 remove pop del a.remove(a[0]) #不能切片 print(a) a.pop(1) #根据索引删除 print(a) del a[0] print(a) del a print(a)
其他操作:
#count 计算元素出现次数 t = ['to','be','or','not','to','be'].count('to') print(t)
#extend 将一个列表延伸到另一个列表后面 a = [1,2,3] b = [4,5,6] a.extend(b) print(a) print(b)
#index 根据内容找位置 a = ["alex", "bill", "cindy", "ellen", "frank"] print(a.index('cindy'))
#reverse 倒序 a = ["alex", "bill", "cindy", "ellen", "frank"] a.reverse() print(a)
#in判断值是否存在 print("dylan" in a)
#sort x = [4,6,2,1,7,9] x.sort() print(x) x.sort(reverse = True) print(x)
元组:
元组可以查看,不能增加,删除和修改
#元组 a = (1,2,3,4) print(a[1:2])
(2,)
5. 字典
特性:无序、键唯一
字典的创建:
dic1 = {'name':'eva'} dic2 = dict((('name','eva'),)) print(dic2)
#增 dic1 = {'name':'eva'} dic1['age'] = 22 print(dic1) #键存在, 不改动,返回字典中相应的键对应的值 ret = dic1.setdefault('age', 34) print(ret) #键不存在,在字典中增加新的键值对,并返回相应的值 ret2 = dic1.setdefault('hobby','piano') print(dic1) print(ret2) #查 通过键查找 dic3 = {'name': 'eva', 'age': 22, 'hobby': 'piano'} print(dic3['name']) print(dic3.keys()) print(dic3.values()) print(dic3.items()) #改 dic3['age'] = 24 print(dic3) #update更新 如果有重复的键,更新之 dic4 = {'name': 'eva', 'age': 22, 'hobby': 'piano'} dic5 = {'sex':'female', 'job':'analyst'} dic4.update(dic5) print(dic4) print(dic5) #删 dic5 = {'name': 'eva', 'age': 22, 'hobby': 'piano', 'sex': 'female', 'job': 'analyst'} del dic5['name'] #删除字典中指定键值对 print(dic5) dic5.clear() #清空字典 print(dic5) print(dic5.pop('age')) #删除字典中指定键值对,并返回该键值对的值 print(dic5) a = dic5.popitem() #随机删除某组键值对,并以元组方式返回 print(a,dic5) del dic5 #删除整个字典 print(dic5)
#字典的遍历 for i in dic5: print(i,dic5[i]) for i,v in dic5.items(): print(i,v)
6.字符串
#重复输出字符串 print('hello'*20) #通过索引获取字符串中字符 print('helloworld'[2:]) #关键字 in print('el' in 'hello') #格式化输出 print('%s is a good student.'%'eva') #字符串拼接 a = '123' b = 'abc' # c = a + b #print(c) c = ''.join([a,b]) print(c) #String的内置方法 st = 'hello kitty' print(st.count('l')) #统计元素个数 print(st.capitalize()) #元素首字母大写 print(st.center(50, '-')) #居中 print(st.endswith('y')) #以某个内容结尾 print(st.startswith('he')) #以某个内容开始
st = 'he llo kitty' print(st.expandtabs(tabsize = 10)) st = 'hello kitty' print(st.find('t')) #查找到第一个元素并将索引值返回 print(st.index('t')) st = 'hello kitty{name} is {age}' print(st.format(name = 'eva', age = 22)) #格式化输出的另一种方式 print(st.format_map({'name':'eva', 'age':22})) #格式化输出的另一种方式 print('abc456'.isalnum()) print('234564'.isdecimal()) print('1345345'.isdigit()) print('1345345'.isnumeric()) print('34545646'.isidentifier()) print('abc'.islower()) print('ABC'.isupper()) print(' '.isspace()) print('My Title'.istitle()) print('My Title'.lower()) print('My Title'.upper()) print('My Title'.swapcase()) #大写变小写,小写变大写 print('My Title'.ljust(50,'*')) print('My Title'.rjust(50,'*')) print(' My Title '.strip()) print('ok') print(' My Title '.lstrip()) print(' My Title '.rstrip()) print('My title title'.replace('title','lesson',1)) print('My title title'.rfind('t')) print('My title title'.split(' ')) #将字符串分成列表 a = '123' b = 'abc' d = '44' c = ''.join([a,b,d]) #合并字符串 print(c) print('my title title'.title())