我正在尝试执行以下操作;
[1,2,3,4]
-> [1,1,2,3]
这是我的尝试,但无济于事。我想修改它。
A = [1,2,3,4]
temp = A[0]
for i in range(1, len(A)-2):
A[i] = temp
temp = A[i]
但是我反而回到了[1,1,3,4]
。我也想向后移动,但到目前为止我无法向前移动一个。
答案 0 :(得分:5)
除非我缺少任何东西,也许您只需要一些简单的列表切片和分配?
failed
类似地,向后移1将是
int main() {
int choice;
while (true) {
cout << "Enter a number: ";
while (!(cin >> choice)) {
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout << "Enter a valid choice: ";
}
}
return 0;
}
通常,要移动N,请使用:
A[1:] = A[:-1]
A
# [1, 1, 2, 3]
也可以通过A[:-1] = A[1:]
循环和temp变量来向前移动1:
A[n:] = A[:-n]