列表、字典总结

列表:


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)                 #通过验证



执行结果:



['沈巍伟', '袁凌', '胡歌', '成龙']

[]

成龙

胡歌

袁凌

沈巍伟

[]

['成龙', '胡歌', '袁凌', '沈巍伟']

----------------------------------------------------------------------

猜你喜欢

转载自www.cnblogs.com/xiaobaibailongma/p/12056246.html