Python中数据结构 列表 元组 字典 序列
列表
list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列
的项目。假想你有一个购物列表,上面记载着你要买的东西,你就容易理解列表了。只不过在你的购物表上,可能每样东西都独自占有一行,而在Python中,
你在每个项目之间用逗号分割。
列表中的项目应该包括在方括号中,这样Python就知道你是在指明一个列表。一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于
你可以增加或删 除项目,我们说列表是 可变的 数据类型,即这种类型是可以被改变的。
Python为list类提供了append方法,这个方法让你在列表尾添加一个项目。我们指明我们想要删除列表中的第一个元素,因此我们使用
del
shoplist[0](记住,Python从0开始计数)。使用列表的sort方法来对列表排序。需要理解的是,这个方法影响列表本身,而不是返回一个
修改后的列表——这与字符串工作的方法不同。这就是我们所说的列表是 可变的 而字符串是 不可变的 。
使用了for..in循环在列表中各项目间递归。
元组
元组和列表十分类似,只不过元组和字符串一样是 不可变的
即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改
变。
一个空的元组由一对空的圆括号组成,如myempty =
()。然而,含有单个元素的元组就不那么简单了。你必须在第一个(唯一一个)项目后跟一个逗号,这样Python才能区分元组和表达式中一个带圆括号的对
象。即如果你想要的是一个包含项目2的元组的时候,你应该指明singleton = (2 , )。
zoo = ('wolf', 'elephant', 'penguin')
new_zoo = ('monkey', 'dolphin', zoo)
我们可以通过一对方括号来指明某个项目的位置从而来访问元组中的项目,就像我们对列表的用法一样。这被称作 索引
运算符。我们使用new_zoo[2]来访问new_zoo中的第三个项目。我们使用new_zoo[2][2]来访问new_zoo元组的第三个项目的
第三个项目。
元组最通常的用法是用在打印语句中,下面是一个例子:
age = 22
name = 'Swaroop'
print('%s is %d years old' % (name, age))
print('Why is %s playing with that python?' % name )
字典
字典类似于你通过联系人名字查找地址和联系人详细情况的地址簿,即,我们把键(名字)和值(详细情况)联系在一起。注意,键必须是唯一的,就像如果
有两个人恰巧同名的话,你无法
相关文档:
原文地址 http://www.javaeye.com/wiki/Python/1371-python-graphics-library-pil-python-image-library-introduction
关于PIL库的一些概念
pil能处理的图片
类型
pil可以处理光栅图片(像素数据组成的的块)。
通道
一个图片可以包含一到多个数据通道,如果这些通道具有相同的维数和深度,Pil允许将这些通道进行叠加 ......
如果Python源文件中出现中文,需要在源文件第一行加上类似如下的代码页指令:
# -*- coding:gbk -*-
如果程序的运行结果中包含中文,可以在程序开头包含如下代码,就可以正确显示中文结果:
import sys
reload(sys)
sys.setdefaultencoding('gbk')
......
1. What’s the difference between all of the os.popen() methods?
popen2 doesn't capture standard error, popen3 does capture standard
error and gives a unique file handle for it. Finally, popen4 captures
standard error but includes it in the same file object as standard
output.
os.popen()&n ......
Python 字符串
字符串是 字符的序列 。字符串基本上就是一组单词。
我几乎可以保证你在每个Python程序中都要用到字符串,所以请特别留心下面这部分的内容。下面告诉你如何在Python中使用字符串。
使用单引号(')
你可以用单引号指示字符串,就如同'Quote me on this'这样。所有的空白,即空格和制表符都照原样保留。 ......
从去年还没毕业就接触Python,上周有些无聊重新再看一遍,发现其确实不错。语法简单,一个下午基本了解,使用Pydev插件在Eclipse中进行开发基本上没有任何障碍。重点是其效率很高,不需编译直接运行。比较适合进行数据的预处理。不错,以后有机会好好用用。 ......