Python 12.26

Python 中字符串被定義爲引號之間的字符集合。Python 支持使用成對的單引號或雙引號,三引號(三個連續的單引號或者雙引號)可以用來包含特殊字符。使用索引運算符( [ ] )和切片運算符( [ : ] )可以得到子字符串。字符串有其特有的索引規則:第一個字符的索引是 0,最後一個字符的索引是 -1 

>>> str = 'Python'

>>> str[0]  #str的第一個字符

'P'

>>> str[-1] #str的最後一個字符

'n'

>>> str[2:5] #切片操作  str的第二個-第四個字符

'tho'

>>> iscool = 'is cool!'

>>> iscool[:2]  #切片操作 is cool的前兩個字符

'is'

>>> iscool[3:] #切片操作 iscool第三個字符後面的所有字符

'cool!'

>>> str+iscool  #連接操作

'Pythonis cool!'

>>> str+" "+iscool

'Python is cool!'

>>> '_'*20      #輸出多個符號

'____________________'

>>> 

列表和元組有幾處重要的區別。列表元素用中括號( [ ])包裹,元素的個數及元素的值可以改變。元組元素用小括號(( ))包裹,不可以更改(儘管他們的內容可以)。元組可以看成是隻讀的列表。通過切片運算( [ ] 和 [ : ] )可以得到子集,這一點與字符串的使用方法一樣。 

>>> alist =[1,2,3,4]

>>> alist

[1, 2, 3, 4]

>>> alist[0]

1

>>> alist[2:]

[3, 4]

>>> alist[:3]

[1, 2, 3]

>>> alist[1]

2

>>> alist[1]=5   #列表信息可以被修改

>>> alist

[1, 5, 3, 4]

>>> 

###############################

>>> phone =('nokia','sunsang','apple')

>>> phone

('nokia', 'sunsang', 'apple')

>>> phone[:3]

('nokia', 'sunsang', 'apple')

>>> phone[1] = 'chuizi'        #元組信息不能被修改

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

TypeError: 'tuple' object does not support item assignment

>>> 



####字典####

字典是 Python 中的映射數據類型,工作原理類似 Perl 中的關聯數組或者哈希表,由鍵-值(key-value)對構成。幾乎所有類型的 Python 對象都可以用作鍵,不過一般還是以數字或者字符串最爲常用。

值可以是任意類型的 Python 對象,字典元素用大括號({ })包裹。 

>>> pyDict = {'football':'funny'}   #字典用大括號包起來

>>> pyDict['pingpang']='very good'   #也可以這樣賦值

>>> pyDict

{'pingpang': 'very good', 'football': 'funny'}

>>> pyDict.keys()   #顯示所有的key

['pingpang', 'football']

>>> pyDict.values()   #顯示所有的value

['very good', 'funny']

>>> pyDict['pingpang']   #通過key找到對應的value

'very good'

Python 中的 for 循環與傳統的 for 循環(計數器循環)不太一樣, 它更象 shell 腳本里的 foreach 迭代。Python 中的 for 接受可迭代對象(例如序列或迭代器)作爲其參數,每次迭代其中一個元素。 

>>> item = {"python","is","most","language"}

>>> for items in item:

...     print items

... 

python          #python默認在每一行後面添加一個換行符

most

is

language

>>> 

##############

>>> item = {"python","is","most","language"}

>>> for items in item:

...     print items, #添加,的結果

... 

python most is language

>>> 

##############

爲了輸出清晰美觀, 帶逗號的 print 語句輸出的元素之間會自動添加一個空格。通過指定輸出格式, 程序員可以最大程度的控制輸出佈局, 也不用擔心這些自動添加的空格。它也可以將所有數據放到一處輸出--只需要將數據放在格式化運算符右側的元組或字典中。 

>>> who = 'knights'

>>> what = 'Ni!'

>>> print 'We are the',who,'who say',what,what,what,what

We are the knights who say Ni! Ni! Ni! Ni!

>>> print "We are the %s who say %s" %(who,((what + " ")*4))

We are the knights who say Ni! Ni! Ni! Ni! 

>>> 

########
range內置函數

>>> for number in range(14):

...     print number

... 

0

1

2

3

4

5

6

7

8

9

10

11

12

13


對於字母

>>> zimu = 'abcdefg'

>>> for z in zimu:

...     print z

... 

a

b

c

d

e

f

g

還可以和len()搭配使用

>>> zimu = 'abcdefg'

>>> for i in range(len(zimu)):    #顯示字符串編號

...     print zimu[i],'%d'%(i)

... 

a 0

b 1

c 2

d 3

e 4

f 5

g 6

>>> 

>>> for i, ch in enumerate(zimu):#####enumerate()函數  同時輸出字母和編號

...     print ch ,'(%d)' % i

... 

a (0)

b (1)

c (2)

d (3)

e (4)

f (5)

g (6)

>>> 

#####列表解析

>>> squared = [x ** 2 for x in range(4)]

>>> print squared

[0, 1, 4, 9]

>>> 



>>> squared = [x ** 2 for x in range(4)]

>>> for i in squared:

...     print i 

... 

0

1

4

9







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章