說說 Python 的數值列表

2021-09-11 13:34:05 字數 1569 閱讀 9180

range() 函式可以生成一系列的數字:

for v in range(1,10):

print(v)

複製**

執行結果:

range() 函式會從我們所指定的第乙個值開始數, 直到到達所指定的第二個值後停止,但不會包含第二個值。這就是程式語言中的差一行為。

可以使用函式 list() 將 range() 函式的結果轉換為列表:

nums=list(range(1,10))

print(nums)

複製**

執行結果:

使用函式 range() 時, 我們還可指定步長 。 例如,下面的**列印 1~10 內的奇數:

odd_nums=list(range(1,11,2))

print(odd_nums)

複製**

在這個示例中, 函式 range() 從 1 開始數, 然後不斷地加 2 ,所以執行結果為:

利用函式 range(),我們能夠建立任何需要的數字列表, 例如, 下面的**建立了乙個列表, 它包含前 10 個整數( 即 1~10 ) 的立方:

cubes=

for v in range(1,11):

cube=v**3

print(cubes)

複製**

執行結果:

因為邏輯清晰易懂,所以我們可以去除臨時變數 cube,讓**變得更簡潔:

cubes=

for v in range(1,11):

print(cubes)

複製**

有時候, 使用臨時變數會讓**更易讀;而有的時候, 使用臨時變數只會讓**無謂地變長。 我們首先應該編寫清晰易懂且能完成所需功能的**; 等到**審核時, 再轉而考慮是否採用更高效的方法。

還有一種更簡潔的寫法,叫做列表解析。它會將 for 迴圈和建立新元素的**合併為一行, 並且自動附加新元素。它的語法是, 首先指定乙個描述性的列表名, 如 cubes; 然後, 指定乙個左方括號, 並定義乙個表示式, 用於生成你要儲存到列表中的值(如 v**3) 。 接下來, 編寫乙個 for 迴圈, 用於給表示式提供值, 再加上右方括號 。注意:這裡的 for 語句末尾沒有冒號 。

cubes=[v**3 for v in range(1,11)]

print(cubes)

複製**

執行結果:

使用 python 的統計函式,可以很快地找出數字列表的最大值、 最小值和總和:

nums=list(range(1,1000000))

print('最小值:'+str(min(nums)))

print('最大值:'+str(max(nums)))

print('總和:'+str(sum(nums)))

複製**

執行結果:

100 萬個數求和,不到 1s 就算好啦o(∩_∩)o~

說說 Python 的列表切片

切片指的是列表的一部分。指定第乙個元素和最後乙個元素的索引,即可建立切片 python 會在到達指定的第二個索引之前元素後停止 books 半生緣 往事並不如煙 心是孤獨的獵手 print books 0 2 複製 執行結果 如果沒有指定第乙個索引,那麼 python 會預設從表頭開始 books ...

說說如何複製 Python 列表

複製整個列表的方式是 同時省略起始索引和終止索引 就可以建立乙個始於第乙個元素,終止於最後乙個元素的切片。books 半生緣 往事並不如煙 心是孤獨的獵手 my books books print my books str my books 複製 執行結果 有人說,這不是和直接賦值一樣的效果?讓我們...

python 數值列表 75

for value in range 1,5 print value 這裡的意思是從1列印到4.所以如果想要從1列印到5,則必須是range 1,6 如何儲存range 的值?這裡可以使用list 函式 numbers list range 1,6 print numbers 輸出結果 1,2,3,...