Python中使用item()方法遍历字典的例子,pythonitem
Python中使用item()方法遍历字典的例子,pythonitem
Python字典的遍历方法有好几种,其中一种是for...in,这个我就不说明,在Python了几乎随处都可见for...in。下面说的这种遍历方式是item()方法。
item()
item()方法把字典中每对key和value组成一个元组,并把这些元组放在列表中返回。
DEMO
代码:
person={'name':'lizhong','age':'26','city':'BeiJing','blog':'www.jb51.net'}
for key,value in person.items():
print 'key=',key,',value=',value
执行结果:
可见key接收了字典的key,value接收了字典的value值。
但如果只有一个参数接收呢?
person={'name':'lizhong','age':'26','city':'BeiJing','blog':'www.jb51.net'}
for x in person.items():
print x
执行结果
只有一个变量接收值的情况下,直接返回的是每一对key,value对应的元组。
使用item()就有点类似于php里的foreach类似。都能把键=>值的方式遍历出来,如果纯使用for..in则只能取得每一对元素的key值
如代码:
person={'name':'lizhong','age':'26','city':'BeiJing','blog':'www.jb51.net'}
for x in person:
print x
执行结果:
for key in e:
for value in e[key]:
print value
没有优雅的方法解决,只有不要使用print语句,如楼上所说,或者使用python3.X中的print函数(通过
from __future__ import print_function使能print函数形式)
其实,在python2.X手册中对print语句描述说:(python2.7.2官方帮助文档)
一个空格会被自动打印在每个对象前,
除非:(1)还没有输出写到标准输出中
(2)当最后一个写到标准输出的是一个除了空格‘ ’的空白字符
(3)当最后写到标准输出的不是一个print语句。
所以在apple、banana等每个字符前都有一个空格。(apple的a前也有空格呢!)
一个好的解决办法是使用python3.X中的print函数。
通过在文件前面加上:
from __future__ import print_function
就可以使用print的函数形式了。
print函数的语法:
print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])
默认下,若没有指定sep,则使用空格。没指定end,则使用换行符。没指定输出文件则输出到标准输出。
例如:print('hello','world',sep='-',end='#')输出:
hello-world#
所以,你的程序可改为:
from __future__ import print_function
list = ["apple", "banana", "grape", "orange"]
for x in range(len(list)):
print('list[%d]:'%x,end='')
for y in range(len(list[x])):
print(list[x][y],sep='',end='')
print('')
至于: 'list[%d]:'%x 这里的百分号,是一个对字符串的操作符。百分号使得百分号前面的字符串中
的%d被百分号后的x的值替换掉。
参考资料:python2.7.2官方帮助文档。
相关内容
- Python引用(import)文件夹下的py文件的方法,
- Python version 2.7 required, which was not found in the registry,py
- 闭包在python中的应用之translate和maketrans用法详解,pyt
- python中的多线程实例教程,python实例教程
- Python对象的深拷贝和浅拷贝详解,python拷贝详解
- Python中声明只包含一个元素的元组数据方法,python声明
- Python跳出循环语句continue与break的区别,pythoncontinue
- Python实现的一个找零钱的小程序代码分享,python零钱
- Python中变量交换的例子,python变量交换
- Python中请使用isinstance()判断变量类型,pythonisinstance
评论关闭