Python学习_我该怎么修改列表中的元素

来源:互联网 发布:泰尔指数计算软件 编辑:程序博客网 时间:2024/04/29 04:49

建立一个列表后主要用于存储数据,但是我还想对列表中的元素进行增加、修改、删除的操作
1、修改列表中的元素
上一节学习列表时存储的是水果,这一节不用水果了,我们改用武器了

#定义一个武器列表,用于存储各种武器weapons=['青铜剑','鱼肠剑','干将','莫邪']#输出列表,与修改后的结果进行对比print(weapons)#对weapons列表中第一个改成“七星龙渊”weapons[0]='七星龙渊'#输出列表的元素,查看结果print(weapons)

输出:
[‘青铜剑’, ‘鱼肠剑’, ‘干将’, ‘莫邪’]
[‘七星龙渊’, ‘鱼肠剑’, ‘干将’, ‘莫邪’]
2、在列表中增加元素
增加元素可以使用append()和insert()两个方法:

  • 在列表尾部增加元素,使用append()
#定义一个武器列表,用于存储各种武器weapons=['青铜剑','鱼肠剑','干将','莫邪']weapons.append('七星龙渊')print(weapons)

输出:[‘青铜剑’, ‘鱼肠剑’, ‘干将’, ‘莫邪’, ‘七星龙渊’]

  • 在列表随意位置增加元素,使用insert()
#我们测试在第三个位置增加元素#定义一个武器列表,用于存储各种武器weapons=['青铜剑','鱼肠剑','干将','莫邪']weapons.insert(2,'七星龙渊')print(weapons)

输出:[‘青铜剑’, ‘鱼肠剑’, ‘七星龙渊’, ‘干将’, ‘莫邪’]

提示:insert()在使用时需要指定插入元素的位置索引,比如上边在第三个位置增加元素,就要使用索引位置2

3、删除列表中的元素
删除元素可以使用del、pop()、remove()三个方法

  • 1、知道元素的位置然后将元素删除,可以使用del

    #删除'干将',在列表的第三个位置weapons=['青铜剑','鱼肠剑','干将','莫邪']del weapons[2]print(weapons)

    输出:[‘青铜剑’, ‘鱼肠剑’, ‘莫邪’]

  • 2、删除列表的最后一个元素,可以使用pop(),关键是删除后的元素还可以拿来用啊

    weapons=['青铜剑','鱼肠剑','干将','莫邪']r_weapon=weapons.pop()print(weapons)print('我将'+r_weapon+'宝剑卖给了小明。所以我的weapons列表中没有了'+r_weapon+'!')

    输出:
    [‘青铜剑’, ‘鱼肠剑’, ‘干将’]
    我将莫邪宝剑卖给了小明。所以我的weapons列表中没有了莫邪!

    备注:append()是在列表的末尾添加一个元素,pop()是在列表的末尾删除一个元素

  • 3、我想删除列表的任意一个元素,并拿来使用可以使用pop(索引号)

    #删除列表第二个元素‘鱼肠剑’weapons=['青铜剑','鱼肠剑','干将','莫邪']r_weapon=weapons.pop(1)print(weapons)print('我将'+r_weapon+'宝剑卖给了小明。所以我的weapons列表中没有了'+r_weapon+'!')

    输出:
    [‘青铜剑’, ‘干将’, ‘莫邪’]
    我将鱼肠剑宝剑卖给了小明。所以我的weapons列表中没有了鱼肠剑!

    就是在pop()括号中添加元素的位置索引,就可以删除列表任意位置的元素了

  • 4、当我只知道元素值的存在,不知道在列表中的位置时,我可以使用remove()删除此元素

    weapons=['青铜剑','鱼肠剑','干将','莫邪']r_weapon='干将'weapons.remove(r_weapon)print(weapons)print('我将'+r_weapon+'宝剑卖给了小明。所以我的weapons列表中没有了'+r_weapon+'!')

    输出:
    [‘青铜剑’, ‘鱼肠剑’, ‘莫邪’]
    我将干将宝剑卖给了小明。所以我的weapons列表中没有了干将!

    pop()和remove()删除的元素都可以拿来再使用但是:
    1、pop()是在删除元素的同时将删除的元素放进一个可以使用的变量中存储
    2、remove()是先将要删除的元素放进一个变量中,然后将变量放进remove()中执行删除,也可以直接将删除的元素放进remove()执行删除

练习:

  • 1、创建一个列表,存储至少三把武器,并输出用着三把武器砍你的信息
weapons=['青铜剑','鱼肠剑','干将','莫邪']#利用列表本身的属性来输出,有点笨print('我使用'+weapons[0]+'刺了你一剑!')print('我使用'+weapons[1]+'刺了你一剑!')print('我使用'+weapons[2]+'刺了你一剑!')print('我使用'+weapons[3]+'刺了你一剑!')#使用for循环print('这是一个--——————-漂亮的分割线')for weapon in weapons:    print('我使用'+weapon+'刺了你一剑!')

输出:
我使用青铜剑刺了你一剑!
我使用鱼肠剑刺了你一剑!
我使用干将刺了你一剑!
我使用莫邪刺了你一剑!
这是一个–——————-漂亮的分割线
我使用青铜剑刺了你一剑!
我使用鱼肠剑刺了你一剑!
我使用干将刺了你一剑!
我使用莫邪刺了你一剑!

  • 2、在上一题的基础上,你发现有一把剑被卖了出去,你要指出哪把剑被卖了,同时为了保持刺你的剑数没有减少你需要再买一把剑加进列表中,然后用新增加的剑刺你一剑
#你发现青铜剑被卖了出去weapons=['青铜剑','鱼肠剑','干将','莫邪']r_qingtong=weapons.pop(0)print(r_qingtong+'被卖了出去。')#我现在又买了一把"赤霄剑",放在了卖出去的剑的位置,并刺了你一剑weapons.insert(0,'赤霄剑')print(weapons)print('我又买了一把'+weapons[0]+',我使用'+weapons[0]+'刺了你一剑')

输出:
青铜剑被卖了出去。
[‘赤霄剑’, ‘鱼肠剑’, ‘干将’, ‘莫邪’]
我又买了一把赤霄剑,我使用赤霄剑刺了你一剑

  • 3、现在你又得到了三把剑,将一把宝剑添加到列表开头,将一把宝剑添加到列表中间,将一把宝剑添加到列表末尾。
#列表里已经有了四把宝剑weapons=['青铜剑','鱼肠剑','干将剑','莫邪剑']weapons.insert(0,'赤霄剑')weapons.insert(3,'湛卢剑')weapons.append('承影剑')print(weapons)

输出:[‘赤霄剑’, ‘青铜剑’, ‘鱼肠剑’, ‘湛卢剑’, ‘干将剑’, ‘莫邪剑’, ‘承影剑’]

  • 4、突然发现被莫名奇妙被偷走了四把剑,你现在只有2把剑了,结合上边程序的末尾打印你只有两把剑的消息,使用pop()删除列表中的剑,直到只剩2把为止,并在删除后显示你把剑被偷走的消息,对于余下的两把剑输出你用每把剑刺你一剑的消息,并在随后使用del删除剩下的2把剑,打印空列表信息
#接着上一个我已经有了7把剑了#列表里已经有了四把宝剑weapons=['赤霄剑', '青铜剑', '鱼肠剑', '湛卢剑', '干将剑', '莫邪剑', '承影剑']print('我莫名奇妙的只剩下2把剑了...')#显示剑被偷走了n=7while n>2:    r_weapon=weapons.pop(n-1)    n=n-1    print(r_weapon+'被偷走了!')#使用剩下的2把剑刺你for weapon in weapons:    print('使用'+weapon+'刺了你一剑')s=2#删除剩下的2把剑,并打印空列表while s>=1:    del weapons[s-1]    s=s-1print(weapons)

输出:
我莫名奇妙的只剩下2把剑了…
承影剑被偷走了!
莫邪剑被偷走了!
干将剑被偷走了!
湛卢剑被偷走了!
鱼肠剑被偷走了!
使用赤霄剑刺了你一剑
使用青铜剑刺了你一剑
[]
总结
此节主要学习了怎么操作列表中的元素:
1、修改列表中的元素,主要使用替换就行了
2、增加列表中的元素,主要学习了列表末尾增加元素append(),在列表任意位置插入元素insert()
3、删除列表中的元素,主要学习了根据索引删除列表中的元素del,删除列表末尾的元素pop(),删除列表任意位置的元素pop(索引),使用元素名删除元素remove()

这节的学习就到此结束了,但是学了后边的忘了前边的,吃了顿饭全忘了

原创粉丝点击