有关Python在windows下的配置就不再累述,参考博文Python 3.2.3 安装和配置
在linux下,一般都会默认安装Python,我这里用的是fedora17 默认的python 2.7.3 够用了,相关详细配置有待后面详细说明,这里不是重点。
环境:fedora17
学习内容:模块,数据结构
模块
函数和变量的结合体就是模块,它基本包含了所有定义的函数和变量的文件,为了在其它程序中重用模块,模块的文件名必须以.py结尾
用实例进行学习吧:
#!/usr/local/python
# Filename:test_methods.py
def cry():
if __name__ == '__main__': #用来判断此方法执行时被调用对象是不是该实体本身
print 'crying...main'
else:
print 'crying...not main'
def laugh():
if __name__ == '__main__':
print 'laughing...main'
else:
print 'laughing...not main'
def study():
if __name__ == '__main__':
print 'studying...main'
else:
print 'studying...not main'
version = '1.0'上面是创建了一个自己的模块,然后在所建立的这个模块的相同路径下或者在sys.path所列的目录之一。好了,现在就可以用别的Python程序来调用该模块:
#!/usr/local/python
# Filename:call_methods.py
#引用test_methods里面的laugh、cry、version方法
from test_methods import laugh,cry,version
#调用引用的方法和属性
laugh()
cry()
print 'Version is ', version然后这样就可以调用上面所写的函数,这里来详细阐释上面的两段代码:
第一段代码中的这个__name__是一个标识,用来识别本身的程序是被程序主体调用还是被其他的python程序调用,def定义的是方法,version是属性;第二段代码中用了比较流行的from..import句式来调用其它模块的方法,from+要调用的模块名称+import+需要调用的方法
数据结构
顾名思义:数据结构就是用来存储一组相关数据的。在python中有3种内建的数据结构—->列表、元组、字典
列表:
# Filename: list.py
#创建一个list,该list可以新增、删除、修改
shoplist = ['f','w','c','v']
print 'There are ', len(shoplist),'items'
print 'They are:'
#循环该list,并命名对象item
for item in shoplist:
print item,
#向该list增加新元素h
shoplist.append('h')
print shoplist
#给该list排序
shoplist.sort()
print shoplist
#将排序后的list第一个元素赋值给变量olditem
olditem = shoplist[0]
#干掉list第一个元素
del shoplist[0]
print olditem
print shoplistps:python里面的元素取值方法,比如list[0](取第一个元素),list[1:3](取第二个到第4个),list[1:](取第一个到后面所有),list[1:-1](取顺数第二个到倒数第一个的所有值),list[:](取所有值)
元组:
# filename: tuple.py
#创建一个不可变的元组,该数据是不可变的
zoo = ('wolf','monkey','elephant')
print 'Number of animals in the zoo is ', len(zoo)
#创建一个引用了其它元组的元组,相当于一个嵌套
new_zoo = ('dolphin','pig', zoo)
#可以用len函数来获取元组的长度
print 'Number of animals in the new zoo is ', len(new_zoo)
print 'All animals in new zoo are ',new_zoo
#此处的new_zoo[2]是引用其第三个元素
print 'Animals brought from old zoo are', new_zoo[2]
#此处的new_zoo[2][2]引用的是第三个元素下的第三个元素
print 'Last animal brought from old zoo is', new_zoo[2][2]字典:
定义形式:字典 d = {key1 : value1, key2 : value2 },键具有唯一性,并且里面的元素没有顺序。
# Filename: dict.py
#定义一个字典ab
ab = { 'Swaroop' : 'swaroopch@byteofpython.info',
'Larry' : 'larry@wall.org',
'Matsumoto' : 'matz@ruby-lang.org',
'Spammer' : 'spammer@hotmail.com'
}
print "Swaroop's address is %s" % ab['Swaroop']
# Adding a key/value pair
ab['Guido'] = 'guido@python.org'
# Deleting a key/value pair
del ab['Spammer']
print '\nThere are %d contacts in the address-book\n' % len(ab)
for name, address in ab.items():
#打印输出,用元组进行匹配
print 'Contact %s at %s' % (name, address)
if 'Guido' in ab: # OR ab.has_key('Guido')匹配在字典ab中符合Guido的信息
print "\nGuido's address is %s" % ab['Guido']