python元组和字典的简单学习
元组(tuple)
用圆括号()标识,定义元组后,元组元素不可修改。如果想修改元组只能重新定义元组。
因为元组不可更改,所以也没有增删改等用法,主要语法就是访问元组元素,遍历元组。
访问元组元素:
tuple1 = (1, 2, 3, 4)
print(tuple1)
print(tuple1[0]) # 虽然元组是用(),但是当使用索引时还是使用tuple[]。
输出结果:
(1, 2, 3, 4)
1
遍历元组:
用while循环遍历:
index = 0
while index < len(tuple1):
print(tuple1[index])
index += 1
输出结果:
1
2
3
4
用for循环遍历:
tuple1 = (1, 2, 3, 4)
for i in tuple1:
print(i)
字典(dictionary)
是一系列键值对,包括在花括号内({}),每个对之间用逗号隔开,键必须是唯一的,值则不必。
字典的增删查改:
(1)添加键值对
dic_people = {'name': 'abc', 'color': 'yellow'}
print(dic_people) dic_people['old'] = 18 # 添加键
dic_people['language'] = 'English' # 添加值 print(dic_people)
输出结果:
{'name': 'abc', 'color': 'yellow'}
{'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
(2)删除键值对
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
print(dic_people) del dic_people['language'] # 字典使用del语句删除一对键值对 print(dic_people)
输出结果:
{'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
{'name': 'abc', 'color': 'yellow', 'old': 18}
(3)查询字典
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
print(dic_people)
# print(dic_people[0]) # 字典不能通过索引小标来访问
print(dic_people['old'])
# print(dic_people[18]) # 只能通过键值查询key值,不能通过key值查询
输出结果:
{'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
18
(4)修改字典
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
print(dic_people) dic_people['old'] = 20
print(dic_people)
输出结果:
{'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
{'name': 'abc', 'color': 'yellow', 'old': 20, 'language': 'English'}
遍历字典
(1)遍历所有的键值对
使用dic.items()
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'} for key,value in dic_people.items():
# print(key1, value1)
# print(key1 + ':'+ value1) # 注意:使用加号(+)会出错,因为dic_people中old的值是int型
print(key, ':', value)
输出结果:
name : abc
color : yellow
old : 18
language : English
(2)遍历所有的键值
使用dic.keys()
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'} for key in dic_people.keys():
print(key)
输出结果:
name
color
old
language
(3)遍历所有的value值
使用dic.values()
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 20, 'language': 'English', 'length': 18}
for value in dic_people.values():
print(value)
输出结果:
abc
yellow
18
English
18
从上面的示例可以看到输出结果中有重复项,如果我们不想要重复项怎么办?可以使用set(dic.values())
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English', 'length': 18} for value in set(dic_people.values()): # 去掉重复项
print(value)
输出结果:
English
18
abc
yellow
从上面的几个实例可以看出都是for循环加上字典调用函数实现遍历相应的值,那么不调用函数可以for循环遍历吗?
dic_people = {'name': 'abc', 'color': 'yellow', 'old': 18, 'language': 'English'}
for key in dic_people:
print(key)
输出结果:
name
color
old
language
可以看出不调用函数的结果是遍历key值,为什么会这样呢?这就涉及到for循环的本质了,在后面的迭代器中会讲的for循环的本质是什么。
python元组和字典的简单学习的更多相关文章
- Python的dict字典结构操作方法学习笔记
Python的dict字典结构操作方法学习笔记 这篇文章主要介绍了Python的dict字典结构操作方法学习笔记本,字典的操作是Python入门学习中的基础知识,需要的朋友可以参考下 一.字典的基本方 ...
- Python 学习笔记(九)Python元组和字典(一)
Python 元组 元组的定义 元组(tuple)是一种Python对象类型,元组也是一种序列 Python中的元组与列表类似,不同之处元组的元素不能修改 元组使用小括号,列表使用方括号 元组的创建 ...
- Python元组与字典详解
Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup ...
- Python模块——loguru日志模块简单学习
Python loguru模块简单学习 首先安装模块:pip install logoru,然后引入模块: from loguru import logger 1.直接输出到console logge ...
- Python 学习笔记(九)Python元组和字典(三)
字典常用方法 copy() 返回一个字典的浅复制 示例:浅拷贝d.copy() 深拷贝引入import copy copy.deepcopy() >>> help(dict.co ...
- Python 学习笔记(九)Python元组和字典(二)
什么是字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 键必须是唯 ...
- 列表、元组、字典和简单if语句【python实验1】
第一次实验报告: 学生姓名 总成绩 tom 90 jack 89 john 96 kate 86 peter 100 实验内容3-1 建立两个列表分别对学生的姓名和总成绩信息进行存储 name=['t ...
- python元组与字典
一.元组 1.元组的表达 (1,2,3,4) ('olive',123) ("python",) 创建元组: a=tuple((1,2,3,)) b=("python&q ...
- python——元组和字典类型简明理解
元组类型: 元祖创建: 不需要括号可以但是一个元素就当成了字符串类型了 >>> tup1="a"; >>> type(tup1) <cla ...
随机推荐
- 2019西湖论剑web wp
发在正文前 这应该是自己在安全圈摸爬滚打两年多以来第一次正规的ctf比赛.没解出flag,没截图,只提供了一些思路. 遥想往昔,初入大学,带着对PT的向往,一个人穿行在幽暗的图书馆,翻阅啃读一本本安全 ...
- dubbo-2.5.6优雅停机研究
不优雅的停机: 当进程存在正在运行的线程时,如果直接执行kill -9 pid时,那么这个正在执行的线程被中断,就好像一个机器运行中突然遭遇断电的情况,所导致的结果是造成服务调用的消费端报错,也有可能 ...
- centos6.6安装Elasticsearch
1. 安装jar8 yum list java-1.8* sudo yum install java-1.8.0-openjdk* -y java --version 2. 安装elasticsear ...
- list.get(0)防止NPE
package com.chuangjin.p2p; import com.chuangjin.core.utils.JsonUtils; import java.util.ArrayList; im ...
- .net数据库实现Excel的导入与导出
.net数据库实现Excel的导入与导出 参考路径:https://www.cnblogs.com/splendidme/archive/2012/01/05/2313314.html 1.defau ...
- Codeforces Round #555 (Div. 3) E. Minimum Array
题意:b数组可以自由排序,c[i]=(a[i]+b[i])%n. 题目中要求c数组的字典序是最小的.那么我们需要尽量满足前面的c[i],才能使字典序最小. 我们知道a[i]和b[i]都是[0,n-1] ...
- s6 传输层
标题 s6-1 传输层概述(2019-04-06 21:19) s6-2 UDP(2019-04-07 08:39) s6-3 通信模型(2019-04-07 08:47) s6-4 TCP 数据段( ...
- 阿里云服务器搭建SS代理教程!!!
二.搭建教程 1.环境介绍 阿里云服务器ECS(香港): 配置:cpu 1核心.内存 1GB.出网带宽 10Mbps. 系统:CentOS 7.4 64位 2.服务器端搭建 1)使用root用户,分别 ...
- mybatis批量更新报错badsql
mybatis批量更新时语法写的都对,但是报错,需要在连接上面加上allowMultiQueries=true 示例:jdbc:MySQL://192.168.1.236:3306/test?useU ...
- 洛谷 p2440木材加工
#include <iostream>#include <cstring>using namespace std;const int N = 1e5 + 100;int a[N ...