注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

随机过程

http://superware.blog.163.com

 
 
 

日志

 
 

Python 内建数据结构  

2013-03-21 22:09:22|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
一、Lists

    List is of comma-separated values (items) between square brackets. List items need not all have the same type. 由方括号括住的,由逗号分开的元素序列。

    for example:

>>> l = ['c', 2, 'string']

>>> l.index('c')

>>> 0

>>> l.index(2)

>>> 1



二、Tuples

    A tuple consists of a number of values separated by commas, for instance:元组由逗号分开的元素集。可以理解为空间的坐标。

>>> t = 1, 2, 3 # 三个元素

>>> t

>>> (1, 2, 3)

>>> t.index(1)

>>> 0

>>> t.index(2)

>>> 1

>>> u = t, 4, 5 # t 与4、5是平级的

>>> u

>>> ((1, 2, 3), 4, 5) # 三个元素


三、Dictionaries

Dictionaries are somtimes found in other languages as "associative memories" or "associative arrays". The dictionaries are indexed by keys but not by numbers as list to be.

# 创建 dictionary


>>> tel = {'jack':4098, 'sape':4139, 'wilm':3042, 'stvs':2048}

>>> tel

>>> {'jack':4098, 'sape':4139, 'wilm':3042, 'stvs':2048}


# dictionary 关键字


>>> tel.has_key('jack')
>>> true
>>> tel.keys()
>>> ['sape', 'stvs', 'jack', 'wilm']

# dictionary 值

>>> tel.values()
>>> [4139, 2048, 4098, 3042]

# 由数组创建 dictionary


>>> dct = dict ([('sape', 4139), ('guido', 4127), ('jack', 4098)])
>>> dct
>>> {'sape':4139, 'jack':4098, 'guido':4127}

物理上就是上述 3 种数据类型,但在逻辑上在 List 的基础上定义了一个逻辑数据类型:Sets (集合)如下:


Sets

    A set is an unordered collection with no duplicate elements.集合是无序的不重复元素集。与序列的区别在于:序列可能有重复数据。

>>> s = ['a', 'b', 'c', 'a']

>>> set (s)

>>> set(['a', 'b', 'c'])

>>> a = set(s)

>>> a

>>> set(['a', 'c', 'b'])

>>> a.add('d')

>>> a

>>> set(['a', 'c', 'b', 'd'])


四、上述三种数据的遍历:

>>> for element in [1, 2, 3]: # List 的遍历
print element
>>> for element in (1, 2, 3): # tuple 的遍历
print element
>>> for key in {’one’:1, ’two’:2}: # dictionary 的遍历
print key
>>> for char in "123": # string 转换为 list,字符串就是数组.
print char
>>> for line in open("myfile.txt"): # 文件行遍历
print line,

这里就文件的行遍历进行说明。有GDP文件如下:

USA 15094025
China 11299967
India 4457784
Japan 4440376
Germany 3099080
Russia 2383402
Brazil 2293954
UK 2260803
France 2217900
Italy 1846950

在GDP所在的目录下现执行如下语句:

>>> for l in open(“GDP”)

>>> print l

...

...

USA 15094025

China 11299967

India 4457784

Japan 4440376

Germany 3099080

Russia 2383402

Brazil 2293954

UK 2260803

France 2217900

Italy 1846950
>>>
  评论这张
 
阅读(21)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018