分享

Python:针对循环与字典

 yliu277 2016-12-08
循环
----------------------------------------------------------------
for i in range (1,10)
print '2 to the %d power is %d' % (i , 2**i )
range(i,j)函数建立一个整数序列,这个序列从第i数开始(包括i)到第j数为止( 不包括j)
a = range(5) # a = [0,1,2,3,4]
b = range(1,8) # b = [1,2,3,4,5,6,7]
c = range(0,14,3) # c = [0,3,6,9,12] 其中3为步长
d = range(8,1,-1) # d = [8,7,6,5,4,3,2] 其中-1为步长
for 语句可以迭代任何类型序列:
a = 'hello world'
for c in a:
print c
b = [ 'Dave' , 'Mark' , 'Ann' , 'Phil' ]
for name in b:
print name
range()函数根据起始值,终止值及涉及步进三个参数在内存中建立一个列表 ,当需要一个很大的列表时,这个既占内存又费时间
为了克服它的缺点,Python提供了xrange()函数:
for i in xrange(1,10):
print '2 to the %d power is %d' % (i , 2**i )
a = xrange(1000000000) # a = [ 0 , 1 , 2 , ... , 99999999 ]
b
= xrange(0,100000000,5) # b = [ 0 , 5 , 10, ..., 99999995 ]
xrange()函数只有在需要值时才临时通过计算提供值,这打打节省了内存.
----------------------------------------------------------------
字典
----------------------------------------------------------------
字典就是一个关联数组(或称为哈希表),它是一个通过关键字索引对象的集合
使用大括号{}来创建一个字典
a = {
'username' : 'beazley',
'home' : '/home/beazley',
'uid' : 500
}
用关键字索引操作符可以访问字典的某个特定值:
u = a['username']
d = a['home']
用下面的方法插入或者修改对象
a['username'] = 'pxl'
a['home'] = '/home/pxl'
a['shell'] = '/usr/bin/tcsh'
尽管|字符串是最常见的关键字(key)类型,你还是可以使用很多其它的Python对象作为字典的关键字
比如数字和tuple,只要是不可修改对象,都可以用来做字典的key,有些对象,例如列表和字典,不可以用来做字典的Key,
因为他们的内容是允许修改的。
我门可以使用has_key()方法来检验一个键/值对是否存在(或者in操作符):
if a.has_key('username'): 可以使用 'username' in a
username = a['username']
else:
username = 'unknown user'
上边的操作还可以用更简单的方法完成:
username = a.get('username',unknown user') # 如果存在则输出结果,不存在则输出unknown user
字典的keys()方法返回由所有关键字组成的列表:
k = a.keys() # k = [ 'username','home','uid','shell' ]
del 语句可以删除字典中的特定元素:
del a['username']

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多