博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python中的数据结构 --- 元组(tuple)、字典(tuple)
阅读量:5822 次
发布时间:2019-06-18

本文共 1769 字,大约阅读时间需要 5 分钟。

  
元组(tuple)本身是不可变数据类型,没有增删改查;元组内可以存储任意数据类型
一、元组的创建

  例:t = (1,2.3,'star',[1,2,3])      ## 元组里面包含可变类型,故可以间接修改元组类型

二、元组的特性
  t = ([1, 2, 3], 4)
  1)索引

    print t[0]       ## 输出元组的第一个元素

  2)切片

    print t[::-1]    ## 倒叙输出元组的所有元素

  3)重复  
   print t*3  

  4)连接 

   print t+('43',[1,3])      ## 连接的类型必须为元组
  5)成员操作符

    print 'we' in t           ## 若we元素在t元组里面,返回True;否则,返回False

  6)for循环
三、元组的应用
  1、变量的交换
   a = 1
   b = 3
   a, b = b, a       ## 实现a、b的交换
  2、打印变量值
   name = 'westos'
   age = 10
   t = (name, age)
   print "name:%s  age:%d" % (name, age)
   print "name:%s  age:%d" % t
  3、元组的赋值:有多少个元素,就有多少个变量接受
   t = ('hello', 10, 100)
   a, b, c = t         ## 此时,变量a、b、c中分别被赋值为hello,10,100
  4、由于元组不可以直接使用排序函数;但可以使用以下两种方法进行排序
   1)可以使用:sorted进行排序是临时的,不修改变量里面的值
  
   2)把元组类型转换为列表,就可以对列表里面的内容进行排序
    

 

   字典(dict)是一个无序的数据集合,使用print输出时,通常输出的顺序和定义的顺序是不一致的。

一、字典的定义

   1)定义方法1

    message = {

     'name': 'tom',

     'age': 18,

     'height': 1.8,

     'weight': 75.5

    }

  2)定义方法2

   s = {}

   s = {

      'student':['xi','xh'],

      'school':['xaut','2']

    }

  3)定义方法3:

   d = dict(a=1, b=2, c=5)

   print d, type(d)

二、字典的特性:没有索引、切片、重复、连接;有成员操作符、for循环 

 
1)成员操作符(默认判断key值是否存在)
   
 
2)for循环(默认循环遍历字典的key值)
  
for i in d:
     print i 

三、字典的增加

 1)添加或者更改key-value对

 
 2)update: 如果key值存在,更新value值;如果key值不存在,添加key-value值
 
 
3)setdefault:如果key值已经存在,不做修改;如果key值不存在,添加key-value值
  

四、字典的删除

  1)使用pop('key'),弹出指定的key-value值

   

  2)使用popitem(),删除字典的第一个元素

   

  3)del :删除字典

       

五、字典的修改与查看

   service = {'http':80,'mysql:3306'}

  1)查看字典里面所有的key值

    print  service.keys()

  2)查看字典里面所有的value值

    print service.values()

  3)查看字典里面所有的key-value值

    print service.items()

  4)遍历

    for k,v  in  service.items():

         print k,'--->',v              ## 直接输出key和value值

    for k in service:

         print k,'--->',service[k]     ## 利用key值,检索到value值

  5)判断指定key对应的value

    if 'http' in service:

        print service['http']

    else:

        print 'key  not exist'

    或者使用get方法来获取:如果key存在,返回对应的value值;否则默认返回None,如果需要指定返回值,传值即可

    print service.get('http','key  not exist')

 

   

   

 

转载于:https://www.cnblogs.com/uthnb/p/9581157.html

你可能感兴趣的文章
js之无缝滚动
查看>>
Django 多表联合查询
查看>>
logging模块学习:basicConfig配置文件
查看>>
Golang 使用 Beego 与 Mgo 开发的示例程序
查看>>
ntpdate时间同步
查看>>
+++++++子域授权与编译安装(一)
查看>>
asp.net怎样在URL中使用中文、空格、特殊字符
查看>>
路由器发布服务器
查看>>
实现跨交换机VLAN间的通信
查看>>
jquery中的data-icon和data-role
查看>>
python例子
查看>>
环境变量(总结)
查看>>
ios之UILabel
查看>>
Java基础之String,StringBuilder,StringBuffer
查看>>
1月9日学习内容整理:爬虫基本原理
查看>>
安卓中数据库的搭建与使用
查看>>
AT3908 Two Integers
查看>>
渐变色文字
查看>>
C++ 0X 新特性实例(比较常用的) (转)
查看>>
node生成自定义命令(yargs/commander)
查看>>