我想向数组添加一个新条目并删除最后一个条目。我想不使用pop
或append
等来完成此操作。
尝试
def main():
array = [1,2,3,4,5]
array_len = len(array)
new_val = 9
print(array)
for i in range(0,array_len-1):
temp = array[i]
array[i] = array[i+1]
array[i+1]= temp
array[0] = new_val
print(array)
main()
当我想要的答案是[9,3,4,5,1]
时,输出将给出[9,1,2,3,4]
。任何有关如何纠正所用逻辑的提示都很棒!
修改
我应该更清楚了。我想仅使用逻辑和循环来执行此操作,而不使用内置的python函数或诸如array [:-1]之类的数组操作。
答案 0 :(得分:2)
您可以执行以下操作:
array = [1, 2, 3, 4, 5]
new_array = [9] + array[:-1]
结果:
[9, 1, 2, 3, 4]
array[:-1]
的意思是:取出array
中的所有物品,最后一个除外。
通过将其添加到仅包含数字9的列表中,您将获得所需的结果。
答案 1 :(得分:1)
使用列表文字和切片足够简单:
array = [1,2,3,4,5]
new_val = 9
# option 1: new object
array = [new_val] + array[:-1]
# option 2: mutate existing array by slice assingment
array[:] = [new_val] + array[:-1]
答案 2 :(得分:1)
不是最好的代码!!!
只需修改您的代码即可使用
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
<div id="svg"></div><br>
<div id="output">Please click on any icon.</div>