我想在列表中只增加每秒的数字(0-100),但我无法让它工作。
答案 0 :(得分:0)
我想改为列表如此: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]
答案 1 :(得分:0)
你不能用0乘以,因为结果总是为0。
result=1
for i in range (1 , 10 ):
if i%2==0:
result*=i
print(result)
答案 2 :(得分:0)
[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)
<{1}}的结果如下:
iterate_count=5
答案 3 :(得分:0)
UPDATE l
SET l.LicensePlate = null
FROM Car l
INNER JOIN (SELECT UserId, Max(Id) AS max_id
FROM Car
GROUP BY UserId) m ON m.UserId = l.UserId
AND m.max_id <> l.id
这将为您提供列表中的每个第二个元素并将其全部加倍。
答案 4 :(得分:0)
使用range()生成要更改的条目的索引...
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]