Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从python列表中删除特定元素并将这些元素添加到列表的最后一个元素中?_Python_List - Fatal编程技术网

如何从python列表中删除特定元素并将这些元素添加到列表的最后一个元素中?

如何从python列表中删除特定元素并将这些元素添加到列表的最后一个元素中?,python,list,Python,List,对于上述问题,互联网上有很多解决方案,但我在这里构建自己的逻辑,并编写了以下解决方案,但我的代码不是动态的,例如,我的代码仅适用于num=2 我们如何使用下面的逻辑为动态用户输入编写代码。如有任何建议,将不胜感激 我的代码: l = [1,2,3,4,5,6,7] l1 = [] num = 2 print('original list is:', l) for i in range(0,num-1): rem = l.pop(i) l1.append(rem) for

对于上述问题,互联网上有很多解决方案,但我在这里构建自己的逻辑,并编写了以下解决方案,但我的代码不是动态的,例如,我的代码仅适用于num=2

我们如何使用下面的逻辑为动态用户输入编写代码。如有任何建议,将不胜感激

我的代码:

l = [1,2,3,4,5,6,7]
l1 = []

num = 2

print('original list is:', l)

for i in range(0,num-1):
    rem = l.pop(i)
    l1.append(rem)

for i in range(0,num-1):
    rem = l.pop(i)
    l1.append(rem)

print('poup list is',l1)

l.extend(l1)
print('reverse list is',l)
l = [1,2,3,4,5,6,7]

num = 2 (This number can be dynamic, User can pass any number)

Output: l = [3,4,5,6,7,1,2]

If user passed num = 3 then output should be like below:

Output: l = [4,5,6,7,1,2,3]
我的输出:(当num=2时)

我的输出:(当num=3时)

预期解决方案:

l = [1,2,3,4,5,6,7]
l1 = []

num = 2

print('original list is:', l)

for i in range(0,num-1):
    rem = l.pop(i)
    l1.append(rem)

for i in range(0,num-1):
    rem = l.pop(i)
    l1.append(rem)

print('poup list is',l1)

l.extend(l1)
print('reverse list is',l)
l = [1,2,3,4,5,6,7]

num = 2 (This number can be dynamic, User can pass any number)

Output: l = [3,4,5,6,7,1,2]

If user passed num = 3 then output should be like below:

Output: l = [4,5,6,7,1,2,3]

尽管
poup列表
reverse列表
似乎并不代表具有最佳名称的列表,但以下代码片段应该可以解决您的问题:

l = [1,2,3,4,5,6,7]
print("Original list: {}".format(l) )
num = input("Enter value of 'num': " )

l1 = []
for i in range(0,int(num)):
    rem = l.pop(0)
    l1.append(rem)
    
print('poup list is',l1)
l.extend(l1)
print('reverse list is',l)
此处动态存储
num
。对for循环唯一一个小的修正是
l
应该总是弹出第一个元素。这是因为一旦弹出一个元素,第二个元素就成为列表中的第一个元素。但是由于
i
的值增加,它只跳过该元素

以下是一个示例输出:

Original list: [1, 2, 3, 4, 5, 6, 7]
Enter value of 'num': 4
poup list is [1, 2, 3, 4]
reverse list is [5, 6, 7, 1, 2, 3, 4]
​

尽管
poup列表
reverse列表
似乎并不代表具有最佳名称的列表,但以下代码片段应该可以解决您的问题:

l = [1,2,3,4,5,6,7]
print("Original list: {}".format(l) )
num = input("Enter value of 'num': " )

l1 = []
for i in range(0,int(num)):
    rem = l.pop(0)
    l1.append(rem)
    
print('poup list is',l1)
l.extend(l1)
print('reverse list is',l)
此处动态存储
num
。对for循环唯一一个小的修正是
l
应该总是弹出第一个元素。这是因为一旦弹出一个元素,第二个元素就成为列表中的第一个元素。但是由于
i
的值增加,它只跳过该元素

以下是一个示例输出:

Original list: [1, 2, 3, 4, 5, 6, 7]
Enter value of 'num': 4
poup list is [1, 2, 3, 4]
reverse list is [5, 6, 7, 1, 2, 3, 4]
​

您可以使用while循环。代码的问题是,当弹出时索引位置发生了变化,在num=2的情况下,这是正常的,但随后它会与新位置混淆

l = [1,2,3,4,5,6,7]
l1 = []

num = 3

print('original list is:', l)

y = 0
while y != num:
    rem = l.pop(0)
    y +=1
    l1.append(rem)
    print(l)


print('poup list is',l1)

l.extend(l1)
print('reverse list is',l)

您可以使用while循环。代码的问题是,当弹出时索引位置发生了变化,在num=2的情况下,这是正常的,但随后它会与新位置混淆

l = [1,2,3,4,5,6,7]
l1 = []

num = 3

print('original list is:', l)

y = 0
while y != num:
    rem = l.pop(0)
    y +=1
    l1.append(rem)
    print(l)


print('poup list is',l1)

l.extend(l1)
print('reverse list is',l)

我希望
for
循环出现两次是错误的。如果是这样,请更正。@IshwarVenugopal Its不是错误的,如果我不能使用两个for循环,则使用我的逻辑将无法实现预期的输出。无论如何,您的代码是正确的。我希望出现两次的
for
循环是错误的。如果是这样,请更正。@IshwarVenugopal Its不是错误的,使用我的逻辑如果我不能使用两个for循环,我将无法实现预期的输出。无论如何,您的代码是正确的。