python列表元素的循环左移或右移原来如此简单

现在编程已经处于面向百度编程,面向csdn编程的时代了,打开本博客的读者一定是在编程时遇到这样的问题,那么废话不多说,直接上程序:

1、循环左移

A为原始列表,a为左移位数

#A为原始列表,a为左移位数
def list_move_left(A,a):
    for i in range(a):
        A.insert(len(A),A[0])
        A.remove(A[0])
    return A

测试结果:

x = [1,2,3,4,5]
print(list_move_left(x,2))

[3, 4, 5, 1, 2]

2、循环右移

A为原始列表,a为右移位数

#A为原始列表,a为右移位数
def list_move_right(A,a):
    for i in range(a):
        A.insert(0,A.pop())
    return A

测试结果:

x = [1,2,3,4,5]
print(list_move_right(x,2))

[4, 5, 1, 2, 3]

3、使用函数解析

3.1 insert()方法

insert() 函数用于将指定对象插入列表的指定位置。

list.insert(index, obj)
  • index – 对象 obj 需要插入的索引位置。
  • obj – 要插入列表中的对象。

该方法没有返回值,但会在列表指定位置插入对象。
举例:

aList = [123, 'xyz', 'zara', 'abc']
aList.insert( 3, 2009)
print("Final List : ", aList) 
#Final List : [123, 'xyz', 'zara', 2009, 'abc']

3.2 pop()方法

pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list.pop([index=-1])
  • obj – 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值。

该方法返回从列表中移除的元素对象。这也是在循环右移时,没有用remove()方法移除元素的原因。
举例:

list1 = ['Google', 'Runoob', 'Taobao']
list_pop=list1.pop(1)
print ("删除的项为 :", list_pop)
print ("列表现在为 : ", list1)

#删除的项为 : Runoob
#列表现在为 :  ['Google', 'Taobao']
发布了35 篇原创文章 · 获赞 14 · 访问量 6843

猜你喜欢

转载自blog.csdn.net/caoyuan666/article/details/105227497