python study to 2 基础篇
第二章
列表
列表定义:
列表是一组有序的数据集合,可以将各种各样的数据有序的存放在列表中,并可以对其进行增删改查。
列表表示形式:
list_name = ["常量",“变量”] ;list_name = ["北京",name,888] 列表中括号中的数据可以为常量或变量。
列表在python编程中常用的一种数据类型,列表类似于其他语言中的数组,列表中每一个元素都有自己的索引,类似于数组中的下表,能够进行非常有用的操作,而不局限于数组的索引。
列表常用基本操作:
-
- 索引
- 切片
- 追加
- 删除
- 长度
- 切片
- 循环
- 包含
列表的方法:
L.append() 方法用于在列表末尾添加新的对象。
L.count() 方法用于统计某个元素在列表中出现的次数。
L.index() 函数用于从列表中找出某个值第一个匹配项的索引位置。
L.len() 方法返回列表元素个数。
L.list() 方法用于将元组转换为列表。
L.remove() 函数用于移除列表中某个值的第一个匹配项。
L.insert() 函数用于将指定对象插入列表。
L.extend() 函数用于在列表末尾一次性追加另一个序列中的多个值
注意:列表中的索引起始位置是从0开始的。
通过索引找到列表中的某个或某几个元素。
1 >>> list_name = ["梁小龙","谢鹏程","马晓铮","董海燕","钟春细","张少雄","贺旭"," 梁怀军"] 2 >>> list_name[2] #在列表中取出第三个元素,找出”马晓铮“ 3 '马晓铮' 4 >>> list_name[0] #在列表中取出第一个元素,找出”梁小龙“ 5 '梁小龙' 6 >>> list_name[-1] #在列表中取出最后一个元素,找出”梁怀军“ 7 '梁怀军'
列表切片
1 >>> list_name = ["梁小龙","谢鹏程","马晓铮","董海燕","钟春细","张少雄","贺旭"," 梁怀军"] 2 >>> list_name[2:] #在列表中从第三个元素取到最后一个元素。 3 ['马晓铮', '董海燕', '钟春细', '张少雄', '贺旭', '梁怀军'] 4 >>> list_name[1:5] #在列表中取出从第二个元素到第五个元素。 5 ['谢鹏程', '马晓铮', '董海燕', '钟春细'] 6 >>> list_name[0:3] #在列表中取出第一个元素到第三个元素。 7 ['梁小龙', '谢鹏程', '马晓铮'] 8 >>> list_name[:3] #在列表中取出第一个元素到第三个元素。 9 ['梁小龙', '谢鹏程', '马晓铮'] 10 >>> list_name[::2] #在列表中隔一个元素取出一个元素。 11 ['梁小龙', '马晓铮', '钟春细', '贺旭']
列表增删改查
1 >>> list_name = ["梁小龙","谢鹏程","马晓铮","董海燕","钟春细","张少雄","贺旭"," 梁怀军"] 2 3 >>> list_name.append("李志锋") #在列表中追加一个元素。 4 >>> print (list_name) 5 ['梁小龙', '谢鹏程', '马晓铮', '董海燕', '钟春细', '张少雄', '贺旭', ' 梁怀军', 6 '李志锋'] 7 8 >>> list_name.remove("贺旭") #列表中删除某个元素。 9 >>> print (list_name) 10 ['梁小龙', '谢鹏程', '马晓铮', '董海燕', '钟春细', '张少雄', ' 梁怀军'] 11 12 >>> list_name.insert(2,"李志锋") #在列表中第三个位置插入一个元素。 13 >>> print (list_name) 14 ['梁小龙', '谢鹏程', '李志锋', '马晓铮', '董海燕', '钟春细', '张少雄', '贺旭', ' 15 梁怀军'] 16 17 18 >>> list_name.pop(2) #删除下标为2的元素 19 '李志锋' 20 >>> print (list_name) 21 ['梁小龙', '谢鹏程', '马晓铮', '董海燕', '钟春细', '张少雄', '贺旭', ' 梁怀军'] 22 23 >>> del list_name [3:5] #在列表中删除第4 到5个元素,连续删除两个元素。 24 >>> print (list_name) 25 ['梁小龙', '谢鹏程', '马晓铮', '张少雄', '贺旭', ' 梁怀军'] 26 27 >>> list_name[2] = "马晓铮组长" #根据列表元素的下表修改某个元素 28 >>> print (list_name) 29 ['梁小龙', '谢鹏程', '马晓铮组长', '董海燕', '钟春细', '张少雄', '贺旭', ' 梁怀 30 军']
列表翻转、排序、合并
1 >>> list_name.reverse()#列表翻转 2 >>> list_name 3 [' 梁怀军', '贺旭', '张少雄', '钟春细', '董海燕', '马晓铮组长', '谢鹏程', '梁小 4 龙'] 5 6 >>> list_name.sort() #对整个列表进行排序 7 >>> list_name 8 [' 梁怀军', '张少雄', '梁小龙', '董海燕', '谢鹏程', '贺旭', '钟春细', '马晓铮'] 9 10 >>> list_name = ["梁小龙","谢鹏程","马晓铮","董海燕","钟春细","张少雄","贺旭"," 11 梁怀军"] 12 >>> list_name1 = ["侯聪","刘佳"] #创建一个新的列表。 13 >>> list_name.extend(list_name1) #把新列表中的元素合并到原来的列表中。 14 >>> list_name 15 ['梁小龙', '谢鹏程', '马晓铮', '董海燕', '钟春细', '张少雄', '贺旭', '梁怀军', ' 16 侯聪', '刘佳']
元组
元组定义:
一种有序列表的数据集合,元组中的数据是无法修改,可视为只读模式
元组的表示形式:
Tuple_name = (tuple1,tuple2,tuple3,tuple4,tuple5)
元组的操作方法:
1、append()
2、insert()
1 >>> >>> tuple_name = ("梁小龙","谢鹏程","马晓铮","董海燕","钟春细","张少雄","贺旭"," 2 梁怀军") 3 >>> tuple_name [1] 4 '谢鹏程' 5 6 >>> tuple_name [3:5] #在元组中取第四个到第五个元素值 7 ('董海燕', '钟春细') 8 9 >>> tuple_name [-1] #在元组中取倒数第一个元素 10 '梁怀军'
字典
字典的定义:
字典是一种可变的数据容器模型,它可以存取任意数据类型的值。
字典表示形式:
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如:
d = {key1: value1 , key2: value2}
字典中的key(键值)是唯一且不变的,则key后面相应的value是可变的。
字典常用操作:
-
- 索引
- 新增
- 删除
- 键、值、键值对
- 循环
- 长度
字典常用内建函数:
D.clear() 函数用于删除字典内所有元素。
D.get() 函数返回指定键的值,如果值不在字典中返回默认值。
D.update() 函数把字典dict2的键/值对更新到dict里。
D.items() 函数以列表返回可遍历的(键, 值) 元组数组。
D.values() 函数以列表返回字典中的所有值。
D.keys() 函数以列表返回一个字典所有的键。
D.fromkeys() 函数用于创建一个新字典,以序列seq中元素做字典的键,value为字典所有键对应的初始值。
D.setdefault() 函数和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值。
字典取值增删改
1 字典key_value增删改查 2 例1 3 >>> disc_name = {"name": "王刚" , "age": 23 , "job": "IT"} 4 5 >>> disc_name["name"] #访问字典内部值 6 '王刚' 7 8 >>> disc_name["addr"] = "东北" #在字典中增加一个key/value。 9 >>> disc_name 10 {'job': 'IT', 'age': 23, 'name': '王刚', 'addr': '东北'} 11 12 >>> disc_name["addr"] = "beijing" #在字典中修改某个key的value 13 >>> disc_name 14 {'job': 'IT', 'age': 23, 'name': '王刚', 'addr': 'beijing'} 15 16 {'job': 'IT', 'age': 23, 'name': '王刚', 'addr': 'beijing'} 17 >>> del disc_name["addr"] #删除列表中的某个key/vlaue 18 >>> disc_name 19 {'job': 'IT', 'age': 23, 'name': '王刚'} 20 21 >>> disc_name.clear()#清空字典中的各个key/value 22 >>> disc_name 23 {} 24 25 26 27 例2:定义一个字典,在现有字典中再定义多个字典 28 id_db = { 29 131126199902026980:{"name":"alex li","age":22,"addr":"ShanDong"}, 30 131126199802220898:{"name":"wang wei","age":33,"addr":"BeiJing"}, 31 131126188800002237:{"name":"ma wu","age":67,"addr":"He Bei"} 32 } 33 34 >>> print (id_db[131126199902026980]) #打印字典中某一个key对应的value值 35 {'name': 'alex li', 'addr': 'ShanDong', 'age': 22} 36 37 >>> id_db[131126199902026980]["name"] = "qinghua" #修改字典嵌套内部字典中key:value 38 >>> print (id_db[131126199902026980]) 39 {'name': 'qinghua', 'addr': 'ShanDong', 'age': 22} 40 41 >>> id_db [131126199902026980]["qq_of_wife"] =36829894 #在字典嵌套内部字典中添加一个key : value。 42 >>> print (id_db[131126199902026980]) 43 {'qq_of_wife': 36829894, 'name': 'qinghua', 'addr': 'ShanDong', 'age': 22} 44 45 >>> id_db [131126199902026980].pop("addr") #在字典中删除嵌套字典中的key:vlaue 46 'ShanDong'
循环
While 循环:
在while循环中,只要循环条件为真,while循环就一致执行
While循环的基本语法:
While 循环条件判断语句
执行语句
while循环例子:
1 count = 0 2 while True : 3 count += 1 4 if count > 50 and count < 60 : 5 print ("你是风儿我是沙,缠缠绵绵到天涯",count) 6 if count == 100 : 7 print ("去你妈的风和沙,你们这些脱了裤子是人,穿上裤子是鬼") 8 break
字符串
字符串内建函数:
Str.split() #字符串分割,字符串分割完编程一个列表
Str.join() #字符串连接
Str.strip() #字符串去除空格
Str.center() #返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
Str.find() #检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1
Str.capitalize() #把字符串的第一个字符大写
Str.format() #格式化字符串
Str.isdigit() #如果 string 只包含数字则返回 True 否则返回 False.
Str.isalnume() #如果 string 至少有一个字符并且所有字符都是字母或数字则返
回 True,否则返回 False
Str.startwith() #检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查.
Str.endwith() #检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
Str.upper() #转换 string 中的小写字母为大写.
Str.lower() #转换 string 中所有大写字符为小写.