我想只乘以列表(0-100)上的每個第二個數字,但我無法使其工作。僅使用列表的第N個元素進行操作
回答
[x*10 for x in range(100) if x%2==0] # take vale to be multiply instead of 10, use x if you want to multiply with number it self
以下的代碼只是增加偶數元素而保持原樣。
def iterate_lis(get_list):
ls = []
for x in get_list:
if x%2==0:
ls.append(x*2)
else:
ls.append(x)
print(ls)
return ls
iterate_count = 5 # list will be iterate 5 times
for i in range(iterate_count):
if i ==0:
get_lis = iterate_lis(range(100))
else:
get_lis = iterate_lis(get_lis)
結果爲iterate_count=5
將是如下:
>>>
[0, 1, 4, 3, 8, 5, 12, 7, 16, 9, 20, 11, 24, 13, 28, 15, 32, 17, 36, 19, 40, 21, 44, 23, 48, 25, 52, 27, 56, 29, 60, 31, 64, 33, 68, 35, 72, 37, 76, 39, 80, 41, 84, 43, 88, 45, 92, 47, 96, 49, 100, 51, 104, 53, 108, 55, 112, 57, 116, 59, 120, 61, 124, 63, 128, 65, 132, 67, 136, 69, 140, 71, 144, 73, 148, 75, 152, 77, 156, 79, 160, 81, 164, 83, 168, 85, 172, 87, 176, 89, 180, 91, 184, 93, 188, 95, 192, 97, 196, 99]
[0, 1, 8, 3, 16, 5, 24, 7, 32, 9, 40, 11, 48, 13, 56, 15, 64, 17, 72, 19, 80, 21, 88, 23, 96, 25, 104, 27, 112, 29, 120, 31, 128, 33, 136, 35, 144, 37, 152, 39, 160, 41, 168, 43, 176, 45, 184, 47, 192, 49, 200, 51, 208, 53, 216, 55, 224, 57, 232, 59, 240, 61, 248, 63, 256, 65, 264, 67, 272, 69, 280, 71, 288, 73, 296, 75, 304, 77, 312, 79, 320, 81, 328, 83, 336, 85, 344, 87, 352, 89, 360, 91, 368, 93, 376, 95, 384, 97, 392, 99]
[0, 1, 16, 3, 32, 5, 48, 7, 64, 9, 80, 11, 96, 13, 112, 15, 128, 17, 144, 19, 160, 21, 176, 23, 192, 25, 208, 27, 224, 29, 240, 31, 256, 33, 272, 35, 288, 37, 304, 39, 320, 41, 336, 43, 352, 45, 368, 47, 384, 49, 400, 51, 416, 53, 432, 55, 448, 57, 464, 59, 480, 61, 496, 63, 512, 65, 528, 67, 544, 69, 560, 71, 576, 73, 592, 75, 608, 77, 624, 79, 640, 81, 656, 83, 672, 85, 688, 87, 704, 89, 720, 91, 736, 93, 752, 95, 768, 97, 784, 99]
[0, 1, 32, 3, 64, 5, 96, 7, 128, 9, 160, 11, 192, 13, 224, 15, 256, 17, 288, 19, 320, 21, 352, 23, 384, 25, 416, 27, 448, 29, 480, 31, 512, 33, 544, 35, 576, 37, 608, 39, 640, 41, 672, 43, 704, 45, 736, 47, 768, 49, 800, 51, 832, 53, 864, 55, 896, 57, 928, 59, 960, 61, 992, 63, 1024, 65, 1056, 67, 1088, 69, 1120, 71, 1152, 73, 1184, 75, 1216, 77, 1248, 79, 1280, 81, 1312, 83, 1344, 85, 1376, 87, 1408, 89, 1440, 91, 1472, 93, 1504, 95, 1536, 97, 1568, 99]
[0, 1, 64, 3, 128, 5, 192, 7, 256, 9, 320, 11, 384, 13, 448, 15, 512, 17, 576, 19, 640, 21, 704, 23, 768, 25, 832, 27, 896, 29, 960, 31, 1024, 33, 1088, 35, 1152, 37, 1216, 39, 1280, 41, 1344, 43, 1408, 45, 1472, 47, 1536, 49, 1600, 51, 1664, 53, 1728, 55, 1792, 57, 1856, 59, 1920, 61, 1984, 63, 2048, 65, 2112, 67, 2176, 69, 2240, 71, 2304, 73, 2368, 75, 2432, 77, 2496, 79, 2560, 81, 2624, 83, 2688, 85, 2752, 87, 2816, 89, 2880, 91, 2944, 93, 3008, 95, 3072, 97, 3136, 99]
唯一的問題,我想保留其他數字但處於原始狀態:/ –
@Ez Az現在看到。 – Gahan
我需要一遍又一遍地修改同一個列表,但如果我寫: 對於x在new_list: 如果x%2 == 0: ls.append(X * 10) 其他: ls.append( x) 它只是不會工作。 –
我想改變列舉如此:1,2,3,4,5,6,7,8成爲1,4,3,8,5,16等
雖然我不明白你怎麼乘6與16結束了,我想這是你所需要的:
new_list = []
for x in range(1,100):
if x % 2 == 0: new_list.append(x*2)
else: new_list.append(x)
print(new_list)
如果數字被2整除,你用2乘,並將其附加到一個新的列表。如果沒有,你只需追加它,而不會相乘。
運行這個程序,你會得到以下輸出:
[1, 4, 3, 8, 5, 12, 7, 16, 9, 20, 11, 24, 13, 28, 15, 32, 17, 36, 19, 40, 21, 44, 23, 48, 25, 52, 27, 56, 29, 60, 31, 64, 33, 68, 35, 72, 37, 76, 39, 80, 41, 84, 43, 88, 45, 92, 47, 96, 49, 100, 51, 104, 53, 108, 55, 112, 57, 116, 59, 120, 61, 124, 63, 128, 65, 132, 67, 136, 69, 140, 71, 144, 73, 148, 75, 152, 77, 156, 79, 160, 81, 164, 83, 168, 85, 172, 87, 176, 89, 180, 91, 184, 93, 188, 95, 192, 97, 196, 99]
你不能老是用0乘,因爲結果將始終爲0。
result=1
for i in range (1 , 10):
if i%2==0:
result*=i
print(result)
import numpy as np
l = range(100)
np.product(l[0::2])
這會給你一個列表的每第二個元素和乘法。
使用範圍()來生成要更改的條目的索引...
numbers = [1, 2, 3, 4, 5, 6, 7, 8]
for i in range(1, len(numbers), 2):
numbers[i] *= 2
將導致包含數字列表
[1, 4, 3, 8, 5, 12, 7, 16]
- 1. 列表:用於元組中第n個元素的使用
- 2. 通過base px * n第n個元素縮進每個第n個元素
- 3. 列表形式的列表中的每個第n個元素
- 4. 使用Java8流在列表的第一個元素上執行特定操作
- 5. 動畫列表不起作用 - 僅顯示第一個元素
- 6. 「僅使用列表的第一個元素」R
- 7. 按元素列表的第二個元素對列表進行排序
- 8. 如何按v2.3中的第n個元素對列表進行排序?
- 9. python heapq:如何使用列表列表中的第n個元素對堆進行排序?
- 10. 在Haskell列表中訪問列表中的第n個元素
- 11. 如何選擇上使用XPath從元素列表病房第n個元素
- 12. 如何使列表中的元素與僅包含一個元素的列表進行列表?
- 13. 使用Flex中的圖表元素進行編程操作
- 14. 使用BeautifulSoup獲取第n個元素
- 15. 對列表中的每對元素進行操作
- 16. @XmlAnyElement僅使用第一個元素
- 17. 列表第N個素數的序言
- 18. Prolog - 給出列表中的每個第n個元素
- 19. 指定python列表中的每個第N個元素
- 20. Javascript:使用陣列的每第n個元素
- 21. 使用JavaScript來定位表中的第n列或每個錶行的第n個單元格
- 22. 按Python中第n個元素搜索元組列表
- 23. Zen第n個元素
- 24. prolog-two列表,對相應元素進行操作
- 25. 如何在varbinary列的第N個字節上執行二進制操作?
- 26. 函數顯示列表的第n個元素,返回false。
- 27. 在For循環中查找列表中的第N個元素
- 28. 序言:查找列表中的第N個元素
- 29. r-concatenate列表中的n個元素
- 30. n個元素的反向列表
的可能的複製[我如何循環通過兩個Python列表?](https://stackoverflow.com/questions/2990121/how-do-i-loop-through-a-python-list-by-twos) – asongtoruin
請澄清。你是否想把所有這些數字相乘在一起,你是否想用特定數字乘以每個數字並存儲結果或其他?數字是否在給定列表中乘以「1」,「3」等或第2,第4等項目?另外,你有什麼嘗試? –
我想改成這樣的列表:1,2,3,4,5,6,7,8變成1,4,3,8,5,16等 –