【Python】導入任意個數元素到列表

1.導入任意個數元素到列表

1.1.編程思路

輸入未知個數的元素需要用列表來存儲,由於Python具有內存的動態分配能力,列表不需要手動動態分配內存,只需要兩個方法——.append().extend(),前者爲增加一個元素,後者爲增加一個分片(也可以認爲是子表)。
Python的列表相當於C語言中的共用體數組,但是爲了數據的可操作性,我們往往使用的時候保持列表中元素的一致性。
Python3中的輸入函數是input(),在input()中加入文字即可在錄入數據之前顯示出來這段提示文字。
當然,可以用split()方法對input函數操作,將input函數的字符串用空格隔開爲多個對象,再借助extend()方法,一次性地全部加入空列表totallist中,即可錄入所有的元素

1.2.代碼片

print('輸入未知個數的元素並求和')
totallist=[]
totallist.extend(input('請輸入想累加的數值用空格隔開:\n').split()) #注意input()函數錄入元素均爲字符型
print('鍵入的數值分別爲:')
for i in range(0,len(totallist)):
    print(str(totallist[i])+' ',end='') #打印輸入元素,檢驗一下我們的多輸入方法是否正確
print()     #打印空行
total=0
for i in range(0,len(totallist)):
    total=total+float(totallist[i])	#累加,注意要類型轉換
print('輸入總和爲:total='+str(total))

效果如下:
在這裏插入圖片描述

2.查找一個重複元素在列表中的所有位置

2.1.編程思路

採用for循環遍歷列表,找到列表中和指定元素element相同的元素即記錄下它的索引即可。在查找之前,判斷該元素是否在列表中:

2.2代碼片

print('============輸入未知個數的元素並查找==============')
totallist=[]
totallist.extend(input('請輸入列表元素並用空格隔開:\n').split())
print('查找某個元素並返回其索引列表')
element=input('請輸入所查找元素的值:')
if not (element in totallist):
    print(element,'不在列表中')
else:
    IndexList=[]
    for i in range(0,len(totallist)):
        if totallist[i]==element:
            IndexList.append(i)
    print(element,'在列表中的索引列表爲',IndexList)

效果如下:

在這裏插入圖片描述在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章