Python 7 列表 for 字典,嵌套
列表:
基本格式:变量名 = [元素1,元素2,元素3]
创建:A = ['访客','admin',19] 或 A = list(['armin','admin',19]), 后者更倾向于转换为列表这样的功能。
直接定义的话第一种即可。
in判断: if "访客" in A: 用于判断字符串 访客 是否包含在A当中。 此处判断的最小单位就是列表中的三个元素,
不能判断元素当中更详细的字符了。
if 9 in A[2]: 用于判断数字9 是否包含在A列表中第三个元素当中。此处仅用于判断列表当中某个元素中
是否包含了9这个字符。
索引: A[0]
切片:与字符串相同。例如A[1][1:3] 如果只写到第一个括号,那么切片最小单位就是列表中的元素,
如果写到第二个括号那最小单位就是元素中的字符。
长度:len(A) 列表的长度为列表当中的元素数量。而不是字符数。
循环打印列表元素:
A = list(['armin','admin',19])
i = 0
while i < len(A):
print(A[i])
i += 1
追加元素:A.append("ddd") 向列表尾部增加元素。
插入元素:A.insert(0,"将要插入的元素") 表示在列表A的0号位置前面插入 “将要插入的元素”
删除:A.remove(元素) 但是只会删除由左至右第一个匹配上的元素。
del A[0] 按位置删除列表A中的元素。可以采用del A[0:]切片删除。
修改:A[0] = "adsfasdf" 针对列表A的0号位元素修改为"asdfasdf"
for 循环:
基本结构:
A = ["admin","guest",19]
for 自定义 in A:
print(自定义) #即可循环打印出列表A当中的所有元素。 # break # continue
字典:D = {键:值,键:值}
创建:V = {"name1":"admin"
"name2":"guest"
}
或:
V = dict({"name1":"admin"
"name2":"guest"
})
取值:V['name1'] 即可取出字典V当中'name1'这个键所对应的值。
增加修改元素:V[name3] = "hahaha" 如果字典中含有name3 那么就是修改,如果没有那就会在字典里增加name3.
删除:del D["name3"]
for循环取字典值:
取键: for 自定义 in D: 或者 for 自定义 in D.keys(): print(自定义)

D = {
"name1":"admin",
"name2":"['admin','mark']"
}
for aaa in D: #或者用 for aaa in D.keys(): #aaa是自定义的,.keys是关键字。
print(aaa)

取值:for 自定义 in D.values() 体现 print(自定义)

D = {
"name1":"admin",
"name2":"['admin','mark']"
}
for aaa in D.values(): #aaa是自定义的,.values是关键字。
print(aaa)
输出:
['admin','mark']
admin

取键值对:for key,val in D.items(): 体现 print(key,val) key,val 是随便定义的。逗号是必须的。

D = {
"name1":"admin",
"name2":"['admin','mark']"
}
for key,val in D.items(): @.items 是关键字 key.val是自定义的,但当中的逗号是必须要的
print(key,val)
输出:
name1 admin
name2 ['admin','mark']

for 自定义 in D.items(): 与上面的类似,但输出结果

D = {
"name1":"admin",
"name2":"['admin','mark']"
}
for aaa in D.items(): #aaa是自定义的,.items是关键字。
print(aaa)
输出:
('name2', "['admin','mark']")
('name1', 'admin')

列表与字典的嵌套:
列表嵌套列表:
list = ['armin','admin',1234,['A','B,',11]]
print(list)
['armin', 'admin', 1234, ['A', 'B,', 11]]
字典嵌套:
A_dict = {
'key1':"value1",
'key2':{'k1':'v1','k2':['vv1','vv2']},
'key3':886,
'key4':['armin','admin',[1,2,3],{'k41':'v41'}]
嵌套中字典和列表的修改:

A_dict = {
'key1':"value1",
'key2':{'k1':'v1','k2':['vv1','vv2']},
'key3':886,
'key4':['armin','admin',[1,2,3],{'k41':'v41'}]
}
A_dict['key4'][3]['n']="test" #向 keys4 中的第四个元素中 增加一个键n 值为test。
A_dict['key4'][2].append(9) #向 keys4 中的第三个元素中 增加一个对象9。
print(A_dict)

嵌套的应用:

A_dict = [
{"name" : "armin","pwd" : "123"},
{"name" : "admin","pwd" : "123"},
{"name" : "acmin","pwd" : "123"}
]
username = input("请输入用户名:")
password = input("请输入密码:") for aaa in A_dict:
if username == aaa["name"] and password == aaa["pwd"] :
print("不容易啊")
else:
print("请核对用户名密码")
break

Python 7 列表 for 字典,嵌套的更多相关文章
- python 之 列表与字典
1.4 列表与字典 列表与字典,这两种类型,都是各种类型的集合,以列表为例,如果列表中包含列表,就形成嵌套. 这两种类型几乎是所有python脚本的主要工作组件 . 这种结构信息是可变的可修改的.不像 ...
- **python中列表 元组 字典 集合
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...
- python 中列表 元组 字典 集合的区别
先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...
- python关于列表转为字典的两个小方法
1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','ke ...
- python中列表和字典常用方法和函数
Python列表函数&方法 Python包含以下函数: 序号 函数 1 cmp(list1, list2)比较两个列表的元素 2 len(list)列表元素个数 3 max(list)返回列表 ...
- python之列表、字典的使用
一.概述:以后你在Linux里面写Python脚本的时候会经常用到Python列表.字典,因为你在以后写脚本的时候,大多数情况下都是对文件进行操作处理,使用字典和列表可以很好的操作文件,得出你想要的结 ...
- Python之列表&元组&字典
今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- python字符串 列表 元组 字典相关操作函数总结
1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...
随机推荐
- Spark SQL中 RDD 转换到 DataFrame (方法二)
强调它与方法一的区别:当DataFrame的数据结构不能够被提前定义.例如:(1)记录结构已经被编码成字符串 (2) 结构在文本文件中,可能需要为不同场景分别设计属性等以上情况出现适用于以下方法.1. ...
- ShaderLab中vertex fragment类Shader基础格式笔记
//U3D用的shader语言叫ShaderLab,基础语法官方文档地址 //https://docs.unity3d.com/Manual/SL-Shader.html //开头指明名字,可以在别的 ...
- 关于postman软件的安装与使用
1.这个软件是一个模拟发请求的软件 2.这个软件和这个网站的 json 格式数据有着很好的关系 https://www.json.cn/ 他能帮助我们分解代码, 3.在使用(修改的)过程中发现了一个 ...
- ZOJ1969-Hard to Believe, but True!
import re while True: x = raw_input() if(x == '0+0=0'): print 'True' break a,b,c = re.split('[+=]', ...
- 【POJ3255/洛谷2865】[Usaco2006 Nov]路障Roadblocks(次短路)
题目: POJ3255 洛谷2865 分析: 这道题第一眼看上去有点懵-- 不过既然要求次短路,那估计跟最短路有点关系,所以就拿着优先队列优化的Dijkstra乱搞,搞着搞着就通了. 开两个数组:\( ...
- node or gulp 使用
##MAC 升级node.js的方法 ###第一步,先查看本机node.js版本: $ node -v ###第二步,清除node.js的cache: $ sudo npm cache clean - ...
- javascript DOM编程艺术 第10章问题记录
为什么moveElement函数调用时,必须加字符串的拼接符 var repeat = "moveElement('"+elementID+"',"+final ...
- 一篇文章告诉你如何使用EF CodeFirst做增删改查
一.修改数据 其实修改涉及的内容挺多的,是相对于其他操作来说比较繁琐.也是本文的重头戏. 虽然都是基础内容,但是也是值得细细品味的. 1.最简单直接的修改数据就是从数据库里检索出数据修改相应的字段即可 ...
- 如何让win32 c++窗口不出现在任务栏
把窗口作为某一个窗口的子窗口,然后设置WS_POPUP就可以了.使用CreateWindow时的第三个参数设置为WS_CHILD|WS_POPUP.
- ElasticSearch-5.21安装
环境 操作系统:Centos 6.5 X64 IP地址:192.168.56.100 JDK 环境: # java -version java version "1.8.0_121" ...