import sys
#sys.argv[0] 被設定為指定模塊的全名
#腳本名和附加參數傳入一個名為 sys.argv 的字符串列表。你能夠獲取這個列表通過執行 import sys,列表的長度大於等於1;
if __name__ == '__main__':
print(sys.argv[0])
字符串:
'\' 可以用來轉義引號:
>>> 'doesn't' #未使用'\'轉義
File "<stdin>", line 1
'doesn't'
^
SyntaxError: invalid syntax
>>> 'doesn\'t'
"doesn't"
>>>
如果你前面帶有\
的字符被當作特殊字符,你可以使用原始字符串,方法是在第一個引號前面加上一個r
:
>>> print('C:\some\name') # here \n means newline! C:\some ame >>> print(r'C:\some\name') # note the r before the quote C:\some\name
字符串文本能夠分成多行。一種方法是使用三引號:"""..."""
或者 '''...'''
print("""\ Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to """)
將生成以下輸出(注意,沒有開始的第一行):
Usage: thingy [OPTIONS]
-h Display this usage message
-H hostname Hostname to connect to
字符串可以由 +
操作符連接(粘到一起),可以由 *
表示重復:
>>> # 3 times 'un', followed by 'ium' >>> 3 * 'un' + 'ium' 'unununium'
索引也可以是負數,這將導致從右邊開始計算
除了索引,還支持 切片。索引用於獲得單個字符,切片 讓你獲得一個子字符串:
注意,包含起始的字符,不包含末尾的字符。這使得 s[:i] + s[i:]
永遠等於 s
:
切片的索引有非常有用的默認值;省略的第一個索引默認為零,省略的第二個索引默認為切片的字符串的大小。
有個辦法可以很容易地記住切片的工作方式:切片時的索引是在兩個字符 之間 。左邊第一個字符的索引為 0,而長度為 n 的字符串其最后一個字符的右界索引為 n。例如:
+---+---+---+---+---+---+
| P | y | t | h | o | n |
+---+---+---+---+---+---+
0 1 2 3 4 5 6
-6 -5 -4 -3 -2 -1
對於非負索引,如果上下都在邊界內,切片長度就是兩個索引之差。例如,word[1:3]
是 2 。
列表:
cubes.append(216) #添加元素
>>> print(range(10)) range(0, 10)
在不同方面 range() 函數返回的對象表現為它是一個列表,但事實上它並不是。當你迭代它時,它是一個能夠像期望的序列返回連續項的對象;但為了節省空間,它並不真正構造列表。
我們稱此類對象是 可迭代的,即適合作為那些期望從某些東西中獲得連續項直到結束的函數或結構的一個目標(參數)。我們已經見過的 for 語句就是這樣一個迭代器。list() 函數是另外一個( 迭代器 ),它從可迭代(對象)中創建列表:
>>> list(range(5)) [0, 1, 2, 3, 4]