列表: sygj = ['中国','日本','缅甸','菲律宾','蒙古','葡萄牙','西班牙','德国','法国','美国','加拿大'] ------------------------------------------------------------------------------------------------------- 元组: 列表是可以修改的。然而,有时候你需要创建一系列不可修改的元素,元组可以满足这个需求。 python将不能修改的值称之为不可变的,而不可变的列表,称之为元组。 注意:元组使用圆括号而不是方括号来标记。 a = ('a','b','c','d','e') ------------------------------------------------------------------------------------------------------- 字典: 典:是一系列 键-值 对;每个键都与一个值相关联; 可以通过使用键来访问与之对应的值;与键相关联的值可以是数字、列表、乃至字典。 字典用花括号{ } 键-值 是两个相关联的值。指定键时,python返回与之对应的相关联的值。 键和值之间用冒号分隔; 而 键-值 对之间用逗号分隔。在字典中,你想存储多少个 键-值 都可以。 alien_0 = {'color': 'green', 'points': 5, 'x_position': 12, 'y_position': 21} ------------------------------------------------------------------------------------------------------- list列表(数组): stus=['saki','yuri','mimo'] #定义数组 #下标(角标、索引、编号) 0 1 2 stus[0]表示saki , stus[1]表示yuri, 下标从0开始 列表增删改查: # 增加 stus.append('sami') #在列表末尾增加一个元素 stus.insert(0,'kumi') #在指定位置添加一个元素,其它元组自动后移 # 删除 stus.pop(2) #删除指定位置的元素 del stus[3] #删除指定位置的元素 stus.remove('saki') #删除指定的元素 stus.clear() #清空整个list # 修改 stus[2]='miumiu' #重新赋值 # 查 print(stus[2]) #查询取下标 print(stus[-1]) #查询list最后一个元素 stus.count() #统计这个元素在list里面出现了几次 print(stus.index('saki')) #返回这个元素第一次出现的下标,如果元素不存在,会报错 stus.reverse() #反转列表 print(stus) stus2=['yuri','yuro','yumi'] stus.extend(stus2) #把后面list里面的值加入到第一个list里面 stus3=stus+stus2 #合并两个list print(stus) list排序: nums=[12,33,11,55,19,25,88] nums.sort() # 默认升序 nums.sort(reverse=True) #降序 =============================================================================================== alien_0 = {'color':'green','points':5} print(alien_0) #打印 字典 #----------------------------------------------------------- alien_0['x_position'] = 12 #添加 键-值 alien_0['y_position'] = 21 #添加 键-值 alien_0.setdefault('speed','kuai') #如果此键即key存在,则报错 #setdefault方式,如果key已存在,操作无效,若不存在,则新增,只能新增不能修 print(alien_0) #打印 字典 #----------------------------------------------------------------------- print(alien_0['color']) #打印 键-值 alien_0['speed'] = 'man' #修改键的值,如果此键不存在字典里,就是新增的意思了 print(alien_0) #-------------------------------------- alien_0.pop('speed') #删除指定key的值 print(alien_0) #----------------------------------------------------------- del alien_0['y_position'] #删除指定key的值 print(alien_0) #-------------------------------------- print(alien_0['x_position']) #取指定key的值 print(alien_0.get('x_position')) #取指定key的值 #--------------------------------------------------------------- alien_0.popitem() #随机删除一个值 print(alien_0) #---------------------------------------------------- alien_0.clear() #清空这个字典 print(alien_0) ==================================================================================== alien_0 = {'color':'green','points':5} alien_1 = { 'x_position':100 , 'y_position' : 200 } print(alien_0) print(alien_1) #{'color': 'green', 'points': 5} #{'x_position': 100, 'y_position': 200} #-------------------------------- alien_0.update(alien_1) #将字典2增加到字典1里面 print(alien_0) #{'color': 'green', 'points': 5, 'x_position': 100, 'y_position': 200} #----------------------------------------- print(alien_0.items()) #将字典中所有的项以列表的形式返回,列表中的每一项都是以键值对的形式表现 #dict_items([('color', 'green'), ('points', 5), ('x_position', 100), ('y_position', 200)]) #------------------------------------------------------------------------------------------ for k,v in alien_0.items(): #将字典变为列表,在for输出 print(k,v) for语句执行结果: color green points 5 x_position 100 y_position 200 ---------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PS:列表的 循环 carssa = ['richan','fengtian','bentian','aodi','nisang'] for ax in carssa : print(ax) =================================================================================================== 嵌套: 单独的列表或者字典的循环操作,请看前面几章示例,下面举例列表中有字典,字典中有列表的等嵌套操作。 1、列表中嵌入字典 示例: alien_0 = { 'color': 'green' , 'points': 5 } alien_1 = { 'color': 'follow' , 'points': 15 } alien_2 = { 'color': 'blue' , 'points': 25 } alien_3 = { 'color': 'white' , 'points': 35 } alien_4 = { 'color': 'red' , 'points': 45 } aliens = [ alien_0,alien_1,alien_2,alien_3,alien_4] print(aliens) for alies in aliens : print(alies) 执行结果: [{'color': 'green', 'points': 5}, {'color': 'follow', 'points': 15}, {'color': 'blue', 'points': 25}, {'color': 'white', 'points': 35}, {'color': 'red', 'points': 45}] {'color': 'green', 'points': 5} {'color': 'follow', 'points': 15} {'color': 'blue', 'points': 25} {'color': 'white', 'points': 35} {'color': 'red', 'points': 45} ------------------------------------------------------------------- 示例: aliens = [ ] #创建一个空的外心人列表 for alien_number in range(30) : #创建30个绿色外星人 new_alien = {'color': 'green', 'points': 5} aliens.append(new_alien) print(aliens) for alien in aliens[ :3] : print(alien) 执行结果: [{'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}, {'color': 'green', 'points': 5}] {'color': 'green', 'points': 5} {'color': 'green', 'points': 5} {'color': 'green', 'points': 5} ------------------------------------------------------------------- 2、在字典中存储列表 示例: favorite_languages = { 'shen': ['python','java'], 'yuan': 'java', 'chen': ['c','c++'], 'long': 'delphi', 'huge':['java','ruby'], } print(favorite_languages) 执行结果: {'shen': ['python', 'java'], 'yuan': 'java', 'chen': ['c', 'c++'], 'long': 'delphi', 'huge': ['java', 'ruby']} ----------------------------------------------------------------------------------------------------------------------- 示例: favorite_languages = { 'shen': ['python','java'], 'yuan': ['java'], 'chen': ['c','c++'], 'long': ['delphi'], 'huge':['java','ruby'], } print(favorite_languages) for xingming,kecheng in favorite_languages.items() : #课程是一个列表,item()即提取键和值, print('\n姓名:'+xingming) #姓名在xingming里,课程在kecheng里, for kc in kecheng : print('课程:'+kc) 执行结果 {'shen': ['python', 'java'], 'yuan': ['java'], 'chen': ['c', 'c++'], 'long': ['delphi'], 'huge': ['java', 'ruby']} 姓名:shen 课程:python 课程:java 姓名:yuan 课程:java 姓名:chen 课程:c 课程:c++ 姓名:long 课程:delphi 姓名:huge 课程:java 课程:ruby -------------------------------------------------------------------------------- 3、在字典中存储字典 示例: users = { '沈巍伟' : { '姓': '沈', '名': '巍伟', '地址':'盐城', }, '袁凌凌': {'姓': '袁', '名': '凌凌', '地址': '泰兴', }, } print(users) for username,user_info in users.items() : print(username) print(user_info['姓']+' '+user_info['名']+' '+user_info['地址']) print(user_info) 执行结果: {'沈巍伟': {'姓': '沈', '名': '巍伟', '地址': '盐城'}, '袁凌凌': {'姓': '袁', '名': '凌凌', '地址': '泰兴'}} 沈巍伟 沈 巍伟 盐城 {'姓': '沈', '名': '巍伟', '地址': '盐城'} 袁凌凌 袁 凌凌 泰兴 {'姓': '袁', '名': '凌凌', '地址': '泰兴'} =============================================================================================== 使用标志 : active设置为true,让程序最初处于活动状态, 示例: current_number = 0 current = True while current : current_number += 1 print(current_number) if current_number % 4 == 0 : current = False #结束循环标志 执行结果: 1 2 3 4 ------------------------------------------------------------------------- 在列表之间移动元素 示例: un_confirmed_users = ['沈巍伟','袁凌','胡歌','成龙'] #待验证 confirmed_users = [ ] #通过验证 print(un_confirmed_users) print(confirmed_users) while un_confirmed_users : #while循环不断的运行,知道待验证列表变为空 current_users = un_confirmed_users.pop() print(current_users) confirmed_users.append(current_users) print(un_confirmed_users) #未通过验证 print(confirmed_users) #通过验证 执行结果: ['沈巍伟', '袁凌', '胡歌', '成龙'] [] 成龙 胡歌 袁凌 沈巍伟 [] ['成龙', '胡歌', '袁凌', '沈巍伟'] ----------------------------------------------------------------------