列表也非常適合存儲一組數字,尤其是大數據處理,處理的幾乎都是由數字(如氣溫、距離、人口數量、經濟等)組成的集合。 Python提供很多工具,在數據可視化中,可高效地處理數字列表。 一、數值列表 range() 讓你能夠輕鬆地生成一系列的數字 for value in range(1,6): prin ...
列表也非常適合存儲一組數字,尤其是大數據處理,處理的幾乎都是由數字(如氣溫、距離、人口數量、經濟等)組成的集合。
Python提供很多工具,在數據可視化中,可高效地處理數字列表。
一、數值列表
range() 讓你能夠輕鬆地生成一系列的數字
for value in range(1,6):
print(value)
# 顯示結果為1,2,3,4,5
註意:函數 range(1:6)讓Python從指定的第一個值開始數,併到達第二個值後停止,但不包含第二個值(這裡為6)要列印數字1~10,需要使用 range(1,11) ,在使用range() 時,如果輸出不符合預期,可嘗試將指定的值加1或減1。
numbers = list(range(1,6)) # 要創建數字列表,可使用函數list()可將range()的結果直接轉換為列表
print(numbers)
even_numbers = list(range(2,11,2)) #使用函數range(2,11,2)時,表從2開始數,然後不斷地加2,直到達到或超過終值(11)
print(even_numbers)
squares = [] #定義一個空的squares列表
cube_squares = [] #定義一個空的cube_squares列表
for value in range(1,11): #從1開始,到11結束。註意value只能小於11,即10
square = value**2 # **表示乘方 **2,表示平方
cube_square = value**3 # **3,表示立方
squares.append(square) #方法append()表示列表尾增加元素。
cube_squares.append(cube_square)
print(squares) #迴圈結束後,列印出range(1,11)中1-10的平方
print(cube_squares) #列印出range(1,11)中1-10的立方
編寫三四行代碼來生成列表有點繁複時,可考慮創建列表解析,列表解析將for迴圈和創建新元素的代碼合併成一行,編寫一行代碼就能生成這樣的列表
new_squares = [value**2 for value in range(1,11)]
print(new_squares)
二、對數字列表執行簡單的統計計算,先瞭解幾個專門用於處理數字列表的Python函數。
print(min(squares)) #列印數列squares中最小值
print(max(squares)) #列印數列squares中最大值
print(sum(squares)) #列印數列squares中總和
三、切片
所謂切片,也即列表的一部分,Python稱之為切片,即可指定要使用的第一個元素和最後一個元素間的任意索引。
names=['xiaozhan','caiyilin','huangxiaoyun','zhoushen','DAOlang','huangxiaoming']
print(names[0:3]) #提取列表第1個元素到第2個元素,註意小於第2個數字3,截止索引指定為2
print(names[1:4]) #提取列表第2個元素到第3個元素,註意小於第2個數字4,截止索引指定為3
print(names[2:]) #提取列表第3個元素到末尾的所有元素(註意第1個為0),可將起始索引指定為2 ,並省略終止索引
print(names[-3:]) #-3表示從列表倒數第3個元素到末尾的所有元素
#遍歷切片 遍歷列表的部分元素,可在for迴圈中使用切片。在下麵的示例中,我們遍歷前三名人員,並列印他們的名字
print("Here are the first three names on my name list:")
for name in names[:3]: #提取列表第1個元素到第2個元素,註意小於第2個數字3,截止索引指定為2
print(name.title())
new_names = names[:] # names[:]中省略數字,表示全部
print("The used names list are:")
print(names) #列印原名單
print("\nThe new names list are:")
print(new_names) #列印複製的新名單