2024-04-26 18:33:00 发布
网友
我对for和if语句有问题,但偶尔会出现内存错误
w = 0 x = [] while w < 100: if w % 2 != 0: x.append('boss') else: x.append(w) w = w+1
我不确定是什么导致了这个问题。你知道吗
问题是w=w+1行应该在“else”之外,这样while循环的每次迭代变量都会递增。你知道吗
顺便说一句,您可以使用列表理解来轻松地完成此操作(此代码生成完全相同的列表):
x = [val if not val % 2 else 'boss' for val in range(100)]
让我修复您的代码(while语句)
while
错误是w总是1,因为
w
w只有当w可被2整除时才加1。由于1不能被2整除,因此此代码将停止
如果需要,可以使用for语句。for语句比while语句简单。因此,代码如下所示
for
x = [] for w in range(100): if w % 2 != 0: x.append('boss') else: x.append(w)
x = [w if w % 2 != 0 else 'boss' for w in range(100)]
尝试以下操作:
w = 100 x = [] for i in range(w+1): if i % 2 != 0: x.append('boss') continue x.append(i) i = i+1
问题是w=w+1行应该在“else”之外,这样while循环的每次迭代变量都会递增。你知道吗
顺便说一句,您可以使用列表理解来轻松地完成此操作(此代码生成完全相同的列表):
让我修复您的代码(
while
语句)错误是
w
总是1,因为w
只有当w可被2整除时才加1。由于1不能被2整除,因此此代码将停止如果需要,可以使用
for
语句。for
语句比while
语句简单。因此,代码如下所示尝试以下操作:
相关问题 更多 >
编程相关推荐