python一到10整数的平方和_零基础学python_10_列表(创建数值列表 )
創(chuàng)建數(shù)值列表
需要存儲一組數(shù)字的原因有很多,例如,在游戲中,需要跟蹤每個角色的位置,還可能需要跟蹤玩家的幾個最高得分。在數(shù)據(jù)可視化中,處理的幾乎都是由數(shù)字(如溫度、距離、人口數(shù)量、經(jīng)度和緯度等)組成的集合。
列表非常適合用于存儲數(shù)字集合,而Python提供了很多工具,可幫助你高效地處理數(shù)字列表。明白如何有效地使用這些工具后,即便列表包含數(shù)百萬個元素,你編寫的代碼也能運行得很好。
1.使用函數(shù)range()
Python函數(shù)range() 讓你能夠輕松地生成一系列的數(shù)字。例如,可以像下面這樣使用函數(shù)range() 來打印一系列的數(shù)字:for value in range(1,5):
print(value)
復制代碼
上述代碼好像應該打印數(shù)字1~5,但實際上它不會打印數(shù)字5:
在這個示例中,range() 只是打印數(shù)字1~4,這是你在編程語言中經(jīng)常看到的差一行為的結果。函數(shù)range() 讓Python從你指定的第一個值開始數(shù),并在到達你指定的第二個值后停止,因此輸出不包含第二個值(這里為5)。
要打印數(shù)字1~5,需要使用range(1,6) :for value in range(1,6):
print(value)
復制代碼
這樣,輸出將從1開始,到5結束:
使用range() 時,如果輸出不符合預期,請嘗試將指定的值加1或減1。
2.使用range() 創(chuàng)建數(shù)字列表
要創(chuàng)建數(shù)字列表,可使用函數(shù)list() 將range() 的結果直接轉(zhuǎn)換為列表。如果將range() 作為list() 的參數(shù),輸出將為一個數(shù)字列表。
在前一節(jié)的示例中,我們打印了一系列數(shù)字。要將這些數(shù)字轉(zhuǎn)換為一個列表,可使用list() :numbers = list(range(1,6))
print(numbers)
復制代碼
結果如下:
使用函數(shù)range() 時,還可指定步長。例如,下面的代碼打印1~10內(nèi)的偶數(shù):even_numbers = list(range(2,11,2))
print(even_numbers)
復制代碼
在這個示例中,函數(shù)range() 從2開始數(shù),然后不斷地加2,直到達到或超過終值(11),因此輸出如下:
使用函數(shù)range() 幾乎能夠創(chuàng)建任何需要的數(shù)字集,例如,如何創(chuàng)建一個列表,其中包含前10個整數(shù)(即1~10)的平方呢?在Python中,兩個星號(** )表示乘方運算。下面的代碼演示了如何將前10個整數(shù)的平方加入到一個列表中:squares = []
for value in range(1,11):
square = value**2
squares.append(square)
print(squares)
復制代碼
首先,我們創(chuàng)建了一個空列表;接下來,使用函數(shù)range() 讓Python遍歷1~10的值。在循環(huán)中,計算當前值的平方,并將結果存儲到變量square 中。然后,將新計算得到的平方值附加到列表squares 末尾。最后,循環(huán)結束后,打印列表squares :
為讓這些代碼更簡潔,可不使用臨時變量square ,而直接將每個計算得到的值附加到列表末尾:squares = []
for value in range(1,11):
squares.append(value**2)
print(squares)
復制代碼
兩種代碼等效。在循環(huán)中,計算每個值的平方,并立即將結果附加到列表squares 的末尾。
創(chuàng)建更復雜的列表時,可使用上述兩種方法中的任何一種。有時候,使用臨時變量會讓代碼更易讀;而在其他情況下,這樣做只會讓代碼無謂地變長。你首先應該考慮的是,編寫清晰易懂且能完成所需功能的代碼;等到審核代碼時,再考慮采用更高效的方法。
3.對數(shù)字列表執(zhí)行簡單的統(tǒng)計計算
有幾個專門用于處理數(shù)字列表的Python函數(shù)。例如,你可以輕松地找出數(shù)字列表的最大值、最小值和總和:lists = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(min(lists))
print(max(lists))
print(sum(lists))
復制代碼
注意:出于版面考慮,本節(jié)使用的數(shù)字列表都很短,但這里介紹的知識也適用于包含數(shù)百萬個數(shù)字的列表。
4.列表解析
前面介紹的生成列表squares 的方式包含三四行代碼,而列表解析讓你只需編寫一行代碼就能生成這樣的列表。列表析將for 循環(huán)和創(chuàng)建新元素的代碼合并成一行,并自動附加新元素。面向初學者的書籍并非都會介紹列表解析,這里之所以介紹列表解析,是因為等你開始閱讀他人編寫的代碼時,很可能會遇到它們。
下面的示例使用列表解析創(chuàng)建你在前面看到的平方數(shù)列表:squares = [value**2 for value in range(1,11)]
print(squares)
復制代碼
要使用這種語法,首先指定一個描述性的列表名,如squares ;然后,指定一個左方括號,并定義一個表達式,用于生成你要存儲到列表中的值。在這個示例中,表達式為value**2 ,它計算平方值。接下來,編寫一個for 循環(huán),用于給表達式提供值,再加上右方括號。在這個示例中,for 循環(huán)為for value in range(1,11) ,它將值1~10提供給表達式value**2 。請注意,這里的for 語句末尾沒有冒號,結果與你在前面看到的平方數(shù)列表相同:
要創(chuàng)建自己的列表解析,需要經(jīng)過一定的練習,但能夠熟練地創(chuàng)建常規(guī)列表后,你會發(fā)現(xiàn)這樣做是完全值得的。當你覺得編寫三四行代碼來生成列表有點繁復時,就應考慮創(chuàng)建列表解析
總結
以上是生活随笔為你收集整理的python一到10整数的平方和_零基础学python_10_列表(创建数值列表 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python选取元音开头的单词_一学生易
- 下一篇: python从csv读取数据到网页输入框