python学习笔记
时间:2006-03-29 来源:wuhen33400
学习Python(1)
hoho,开始学习Pyton了。学习新语言,锻炼大脑。首先,啥是Python?一个面向对象的解释型语言,现在广泛应用,比如Redhat上的那些图形化的配置工具。哪里有Python?可以到www.python.org下载。其实安装Linux的时候如果选择了开发工具,通常就有Python了。
接下来:Python能干啥,从计算1+1=?到复杂图形界面编程,Grid Computing都行。就从学习计算开始吧:
在Terminal里敲:python <回车>,就看到“>>>”这样的提示符。 OK,就可以输入语句了并执行了。
看第一个小程序:
>>> 1+1
2
>>> 132434 * 213213213 - 111
28236678650331L
>>>
虽然只有一行,也是程序啊。
俺又想在上次运算的结果上再继续运算,可是那么长的数字不能再敲一遍。所以用“_”来代替最后一次运行的结果。
>>> 132434 * 213213213 - 111
28236678650331L
>>> _+4
28236678650335L
>>>
这样就OK了。
还可以做复数的运算。当然也可以对变量赋值和运算:
>>> i = 123
>>> j = 334
>>> i + j
457
>>>
学习Python(2)
有了数学运算,就需要字符串的一些基本处理。
用单引号和双引号括起来的就是String。
和HTML里的
很相似的是,可以用成对的三个引号来生成预格式化的字符串:
print """ Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to """
String可以用“+”(加号)来连接,也可以简单的写在一起来连接:
>>>'A' + "Help"
>>>'A' "help"
与C一样, Python里的字符串支持[]操作符。但是和Java一致的是:字符串不能被改变,是immutable的。同时Python支持slice这样的下标:
>>> word = "help"
>>> word[1:-2]
'e'
>>>
学习Python(3)
Python提供了一些复合数据类型,比较常用的一种就是List。List支持异构数据。比如:
>>> a = ['spam', 'eggs', 100, 1234]
>>> a
['spam', 'eggs', 100, 1234]
List和String一样,支持slice方式的下标和一些基本运算:
3*a[:3] + ['Boe!']
['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs', 100, 'Boe!']
List和String不同在于,List的内容是可变的,前提是元素是可变类型:
>>> a[2] = a[2] + 23
>>> a
['spam', 'eggs', 123, 1234]
还可以插入,删除,替换部分元素:
>>> # Replace some items: ... a[0:2] = [1, 12] >>> a [1, 12, 123, 1234] >>> # Remove some: ... a[0:2] = [] >>> a [123, 1234] >>> # Insert some: ... a[1:1] = ['bletch', 'xyzzy'] >>> a [123, 'bletch', 'xyzzy', 1234] >>> a[:0] = a # Insert (a copy of) itself at the beginning >>> a [123, 'bletch', 'xyzzy', 1234, 123, 'bletch', 'xyzzy', 1234]
比较常用的两个函数是len()和append()。另外List的元素可以是另一个List:
>>> q = [2, 3] >>> p = [1, q, 4] >>> len(p) 3 >>> p[1] [2, 3] >>> p[1][0] 2 >>> p[1].append('xtra') # See section 5.1 >>> p [1, [2, 3, 'xtra'], 4] >>> q [2, 3, 'xtra']
学习Python(4)
f语句,hoho
>>> x = int(raw_input("Please enter an integer: ")) >>> if x < 0: ... x = 0 ... print 'Negative changed to zero' ... elif x == 0: ... print 'Zero' ... elif x == 1: ... print 'Single' ... else: ... print 'More' ...
Python的Interactive模式里缩进是自动的。写脚本的时候一定要注意缩进,其实缩进就象括号一样来限定code block,所以缩进量的多少并不是非常严格,但是一定要在同一code block内保持缩进量的一致性。
if和else后边的那个冒号让人想起上学时候学习Pascal的日子。