一:元组

元组与列表的最大区别在与元组的第一及元素不可更改,故元组更多的用在安全性要求高与不可更改数据的情况更多。

元组主要有两个方法分别为index()与count(),作用于列表的index()和count()一样,这里不再阐述。

tuple()函数强制把数据转为元组并赋值给新的变量。

>>>li

[1, 8, 2, 1, 'louis', 'hello', 'ok']>>> tu=tuple(li)>>>tu

(1, 8, 2, 1, 'louis', 'hello', 'ok')

二:字典

字典类似于其他编程语言的数组。

①:删除pop()、clear()、popitem()

clear()与列表的功能一样,这里不再阐述

pop(self,k[,d=none])

>>>d

{'key1': 'vel1', 'key2': 'vel2', 'key3': 'vel3'}>>> d.pop("key1")'vel1'

>>> d.pop("key10")

Traceback (most recent call last):

File"", line 1, in d.pop("key10")

KeyError:'key10'

>>> d.pop("key10","123")'123'

>>>

以上代码可知pop()方法,会返回被删除的元素值,k的值如果不存在会报错,但可以通过设置d的参数来返回默认值

popitem()

>>> d={'key1': 'vel1', 'key2': 'vel2', 'key3': 'vel3'}>>>d.popitem()

('key3', 'vel3')

>>> d

{'key1': 'vel1', 'key2': 'vel2'}

有上代码可知,popitem()方法默认删除最后一个元素,并返回键值对。

②:复制方法copy(),该方法与列表的一致

③:创建新字典fromkeys()方法

>>> dict= dict.fromkeys(("baidu","sogo","360"),"www")>>>dict

{'baidu': 'www', 'sogo': 'www', '360': 'www'}

备注,后面的值为可选,默认为空,且该值只能有一个。

④:获取字典数据get()、setdefault()

get(self,k,d=none)

>>>dict

{'baidu': 'www', 'sogo': 'www', '360': 'www'}>>> dict.get("baidu")'www'

>>> dict.get("google")>>> dict["google"]

Traceback (most recent call last):

File"", line 1, in dict["google"]

KeyError:'google'

>>> dict.get("google","google")'google'

>>>

由上带吗可知,get方法能够规避获取字典的数据不存在是可放回none或指定值,从而避免程序报错。

setdefault(self,k,d=none)

>>>dict

{'baidu': 'www', 'sogo': 'www', '360': 'www'}>>> dict.setdefault("baidu")'www'

>>> dict.setdefault("google","google")'google'

>>>dict

{'baidu': 'www', 'sogo': 'www', '360': 'www', 'google': 'google'}

由上代码可知setdefault()方法与get()方法类似,不同之处在于,当获取的键值不存在是会在字典内新建对应键值。

⑤:获取所有键值,items()、keys()、values()

>>>dict.keys()

dict_keys(['baidu', 'sogo', '360'])>>>dict.items()

dict_items([('baidu', 'www'), ('sogo', 'www'), ('360', 'www')])>>>dict.keys()

dict_keys(['baidu', 'sogo', '360'])>>>dict.values()

dict_values(['www', 'www', 'www'])

以上三种方法获取到的值可和list()函数配合使用,取出该值。

⑥:字典更新update()

>>>dict

{'baidu': 'www', 'sogo': 'www', '360': 'www', 'google': 'google'}>>> dict.update({"baidu":"baidu.com"})>>>dict

{'baidu': 'baidu.com', 'sogo': 'www', '360': 'www', 'google': 'google'}>>> dict.update({"yahoo":"yahoo.com"})>>>dict

{'baidu': 'baidu.com', 'sogo': 'www', '360': 'www', 'google': 'google', 'yahoo': 'yahoo.com'}>>>

由上代码可知,update()方法,当键值存在则更新对应值,否则在字典后追加新的键值对应关系。

python字典键值可以是元组吗_python元组与字典相关推荐

  1. TypeError: keys must be str, int, float, bool or None, not tuple,解决 python 中 json 保存不了字典键值为 元组 的问题

    >>> a = {('0xFFFA', 11): 32, ('0x00F3', 1): 1, ('0xFFFA', 2): 42} {('0xFFFA', 1): 32, ('0x0 ...

  2. pythondict增加-python字典键值对的添加和遍历方法

    添加键值对 首先定义一个空字典 >>> dic={} 直接对字典中不存在的key进行赋值来添加 >>> dic["name"]="zh ...

  3. python方向键键值_python字典键值对的添加和遍历方法

    添加键值对 首先定义一个空字典 >>> dic={} 直接对字典中不存在的key进行赋值来添加 >>> dic['name']='zhangsan' >> ...

  4. python获取字典键值集合_Python集合字典

    Python集合&字典 @ 字典 字典的几种定义方式 第一种 字典{key1 : value1, key2 : value2, ......} dict1 = {'one': 1, 'two' ...

  5. python字典键值对转化为相应的变量名和变量值

    将python字典键值对转化为相应的变量名和变量值可以使用以下方法: globals().update({"name":"value"}) locals().u ...

  6. python列表中的字典如何添加键值对_在Python中将键值对添加到字典中

    Python字典是键值对的无序集合.在本教程中,我们将看到如何将新的键值对添加到已经定义的字典中.以下是我们可以使用的两种方法. 将新键分配为下标 我们通过使用新键作为下标并为其分配值来向字典添加新元 ...

  7. python字典取键值对_python 获取字典键值对的实现

    获 得 字 典 键. 值 的 函 数 有: items/ iteritems/ keys/ iterkeys/ values/ itervalues 通 过 以 上 这 些 函 数 得 到 的 是 键 ...

  8. 【python数据处理】将DataFrame数据拆解成为一行一行由字典键值对组成的列表

    将DataFrame数据拆解成为一行一行由字典键值对组成的列表 问题解决 拓展 问题解决 import pandas as pd import numpy as npdf = pd.DataFrame ...

  9. list python 访问 键值对_基础|Python常用知识点汇总(中)

    字符串字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串.1.创建字符串 str1 = 'Hello World!' str2 = "Hello W ...

  10. python输出键值列表_Python 键值分组或分区数据

    Python 使用键值分组或者分区数据,对分组后的数据做何种归约是没有限制的.数据中可能包含一些自变量或者因变量.可以通过自变量对数据进行分区,然后计算每个分区的各项汇总值,包括最大值.最小值.平均值 ...

最新文章

  1. synchronized关键字实现原理
  2. Payment Spring Boot 1.0.2.RELEASE 发布,接入微信支付分、先享卡功能
  3. python小程序源代码-Python数据库小程序源代码
  4. 4-10 :selected选中状态选择器
  5. gcc 与 glibc 的关系 glibc版本查看
  6. hadoop之 Hadoop2.2.0中HDFS的高可用性实现原理
  7. git提交 本地分支和远程分支断开连接
  8. mariadb mysql 5.6_MySQL / MariaDB 5.5 升级到 MySQL 5.6
  9. Linux进程管理(第二版) --计划任务
  10. html小游戏代码_研发实践:Mozilla分享如何开发一款WebVR小游戏
  11. php 去掉无关数据,php 读取 mysql 表中的double数据,去掉多余的0
  12. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——VoiceRecorder控件的使用方式.Net移动开发...
  13. Java基础 - 集合
  14. static、const、static const、const static成员的初始化问题
  15. 编译DPDK遇到make: *** /lib/modules/3.10.0-693.el7.x86_64/build: no such file or dirortory
  16. 树莓派linux负载均衡集群,在树莓派2上Nginx并发1W到底有多难
  17. base64解码成16进制字符串--python3
  18. 1068 万绿丛中一点红 (20 分)测试点3、5
  19. JS中window的onload和ready方法的区别
  20. 怎样将好多个字符串组装成一个数组

热门文章

  1. MD5 AES Des 加密解密
  2. 在一个成熟的分布式系统中 如何下手做高可用?
  3. Sandcastle帮助文档生成器使用介绍
  4. HDOJ(HDU) 2139 Calculate the formula(水题,又一个用JavaAC不了的题目)
  5. editplus的配置和使用
  6. 爬虫——基本库的使用
  7. web前端3.0时代,“程序猿”如何“渡劫升仙”?
  8. 开发版速达与总部原版速达的优势
  9. 9.7号Linux学习笔记
  10. zk如何实现watch