Python list范例有不少的人都不知道是怎么回事。其实这是一个很有趣的东西。也是不少开发人员迷恋上Python 这门语言的原因之一。下面我们就来详细的看看如何进行相关的问题。#t#
通常,程序员爱上Python是因为它能增加生产力。由于没有编译过程,编辑-测试-调试周期相当快。调试Python程序很简单:一个错误永远不会导致一个段错误。当解释器发现错误时,它就引发一个异常。当程序没有捕捉到异常,解释器就打印一个堆栈跟踪。一个源码级调试器允许我们检查局部和全局变量,计算表达式,设置断点,单步跟踪等等。调试器是用Python写的,这证明了Python的能力。另外,最快的调试程序的方法是增加几条打印语句:快捷的编辑-测试-调试周期使得这个简单的办法十分有效。
Python list范例基本的运算式
我们直接切入正题,直接简单的教你使用 Python。 我假设读者己有其它语言的基础,可以直接切入语法重点。
- 1 a = 0
- 2 b = 7
- 3 aa = a + 1
- 4 a = b * a
- 5 print a
- 结果显示 : 7
上面就是 python 的简单例子,相信如果你学过其它的语言(如 C/C++, Java),就能很容易的了解。
- A+B A 加 B
- A-B A 减 B
- A*B A 乘 B
- A/B A 除 B
- A%B 取 A/B 的馀数(如 8 % 3 == 2)
- -A 取 A 的反数( 若 A == 7, -A == -7)
- String
- 1 a = 'hello'
- 2 b = "world"
- 3 c = a + ' ' + b + '!!'
- 4 print c
结果显示 : hello world!!
string 可以使用 ' or " 符号括起来表示。在行 3,是合并四个 string object 的例子, 将四个 string 依顺连接成单一的 string。
- 1 a = '%s=%d' % ('test', 16)
- 2 print a
结果显示 : test=16
类似於 C/C++ 的 printf 或 sprintf,在行 1,python 提供 string format 的功能。 字串 '%s=%d' 指定 string 的 format,而後在字串後接着 % 然後是 format 的参数, 这些参数会依序取代 format 里的 %s 和 %d。%s 代表要取代字串,%d 则是取代成整数。
- a = 'This is a rather long string containing\n\
- several lines of text just as you would do in C.\n\
- Note that whitespace at the beginning of the line is\
- significant.\n'
string 可以延伸到数行,但在每一行的最後必需要有escape \ 以忽略掉 newline。 另外也可以使用 """ 或 '''
- a = '''This is a rather long string containing
- several lines of text just as you would do in C.
- Note that whitespace at the beginning of the line is
- significant.'''
使用 ''' 或 """ 就不需要在每一行结数时 escape,但 newline 会被包含入 string 内容。
- List
- 1 a = []
- 2 a[0] = 'aoo'
- 3 a[1:3] = [10, 11]
- 4 b = [1, 2, 3, 'foo']
- 5 print a, b, b[:3], b[1:]
结果显示 : [9, 10, 11] [1, 2, 3, 'foo'] [1, 2, 3] [2, 3, 'foo']
上面是Python list范例的使用。list 是一个 sequence data type, 类於 C/C++ 的 array, 但 array 是 fixed length 而 list 不是, 其长度是可以随时改变的。行 1 就 bind a 为一个空的 list。 行 2 则指定 index 0 为 'aoo' string object。行 3 为 list 的 slice 的使用范例。 将 index 1 和 index 3 之间的 item(index 1 和 2) 代换成 10 和 11。行 5 的 b[:3] 则相当於 b[0:3], 而 b[1:] 相当於 b[1:4]。list 内的 item 不需是相同的 type, 如上例在一个 list object 里可以同时包含整数和 string 不同 type 的 item。