python列表常用の操作
生活随笔
收集整理的這篇文章主要介紹了
python列表常用の操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python列表常用の方法
列表操作:
1.創建列表:
向列表添加元素:
[i for i in range(1,10)]列表解析式:
#將 1-10 每個數乘以 2 放入一個列表: >>> li = [] >>> for i in range(1, 11):li.append(i*2)>>> print(li) [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] #-------------------- #列表解析式實現: >>> li = [i*2 for i in range(1, 11)] >>> print(li) [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] #--------------------- #此外列表解析式還支持添加篩選條件,例如篩選出 i*2>10 的數: >>> li = [i*2 for i in range(1, 11) if i*2 > 10] >>> print(li) [12, 14, 16, 18, 20]輸入一組數,存入列表里:
''' 第一行為一個整數n。 第二行包含n個整數。 ''' #1.列表里面是數字 n=int(input()) a=list(map(int,input().split())) #輸入和輸出: 3 1 2 3 >>> a [1, 2, 3]#2.列表里面是字符 n=int(input()) a=input().split() #輸入和輸出: 3 1 2 3 >>> a ['1', '2', '3']2.求列表最值
利用python生成器Generator求列表最值
**生成器表達式:**類似于列表推導,但是,生成器返回按需產生結果的一個對象,而不是一次構建一個結果列表
''' 通過列表生成式,我們可以直接創建一個列表。但是,受到內存限制,列表容量肯定是有限的。而且,創建一個包含100萬個元素的列表,不僅占用很大的存儲空間,如果我們僅僅需要訪問前面幾個元素,那后面絕大多數元素占用的空間都白白浪費了。所以,如果列表元素可以按照某種算法推算出來,那我們是否可以在循環的過程中不斷推算出后續的元素呢?這樣就不必創建完整的list,從而節省大量的空間。在Python中,這種一邊循環一邊計算的機制,稱為生成器(Generator)。python中的generator保存的是算法,真正需要計算出值的時候才會去往下計算出值。它是一種惰性計算(lazy evaluation)。 ''' #要創建一個generator有兩種方式。#第一種方法:把一個列表生成式的[]改成(),就創建了一個generator: >>> L = [x * x for x in range(10)] >>> L [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] >>> g = (x * x for x in range(10)) # 注意把[]改成()后,不是生成一個tuple,而是生成一個generator >>> g <generator object <genexpr> at 0x1022ef630>#----------------------------------------- #下面這個例子求字符串列表最大值 n=int(input()) arr = input().split()print(int(arr[i]) for i in range(n))print(max(int(arr[i]) for i in range(n))) # 最大值 print(min(int(arr[i]) for i in range(n))) # 最小值 print(sum(int(arr[i]) for i in range(n))) # 求和 #結果: #輸入: 5 1 2 3 4 5 #輸出: <generator object <genexpr> at 0x00000231AD2840A0> 5 1 153.多維列表
#1.創建一維列表,里面有10個0 >>> l=[0 for i in range(10)] >>> l [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] #2.創建n行m列的二維列表,里面全是零 m,n=map(int,input().split())test = [[0 for i in range(m)] for j in range(n)] #輸入: 4 4 >>> print(test) #輸出: [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] >>> test[1][1]=233 >>> print(test) [[0, 0, 0, 0], [0, 233, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]#輸入: 2 3 #輸出: [[0, 0], [0, 0], [0, 0]] 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python列表常用の操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql数据库查询笔记_MySql数据
- 下一篇: 使用python构建三层神经网络、sof