重新学习Python的第二天_列表及字符串的学习与练习

列表

使用列表中的各个值

创建一个带有姓的列表

names=['zhao','qian','sun','li']
print(names)
['zhao', 'qian', 'sun', 'li']

直接打印变量names会输出=号后面的数据 而想输出列表中名字时就会用到索引(元素的下标)

  • 索引是从0而不是1开始
print(names[0])
zhao
print(names[1])
qian

当想将其首字母大写时也可以用到title() ;索引-1代表最后一位 -2倒数第二 以此类推

print(names[0].title())
Zhao
print(names[2].title())
Sun
print(names[-1].title())
Li

练习

每个姓排在百家姓中的第几位请详细的打印出来

print(f"{names[0].title().strip()} 排在第一位")
Zhao 排在第一位

修改、添加和删除元素

依照上面的names变量 继续进行练习 有点懒不想创建新的 嘿嘿

修改列表中的元素

这里依据的时列表元素的下标(索引)进行修改的 只能单一的慢慢修改 这里也可用到循环进行遍历后续会用到

print(names)
['zhao', 'qian', 'sun', 'li']
names[-1]="wang"
['zhao', 'qian', 'sun', 'wang']

添加元素

  1. append() 类似于title() strip()等方法 但是append() 括号中是要写值的 本方法添加到列表末尾。
  • 需要强调一点append()括号内如果不给值会报错 可以自己尝试一下 可以创建一个空列表在进行添加
names.append("li")
print(names)
['zhao', 'qian', 'sun', 'wang', 'li']
#有点强迫症进行调整一下
names[-2]="li"
names[-1]="zhou"
print(names)
['zhao', 'qian', 'sun', 'li', 'zhou']
  1. insert() 参数与append()是不同 insert()更加能贴近所需 insert()需要填写新元素的索引和值。
  • 并不会将其替换只是占据了索引位置 跟append()规则类似 括号内的参数必须填写 insert(0,“”)可以表达为在第0个下标元素处添加了空值 自己可以打印试一下 但是不能 insert(0,) 或是 insert(,“”)这样都会报错
names.insert(0,"wang")
print(names)
['wang', 'zhao', 'qian', 'sun', 'li', 'zhou']

删除元素

  1. del语句删除元素
#这是使用insert语句填加的空值
print(names)
del names[0]
print(names)
['', 'wang', 'zhao', 'qian', 'sun', 'li', 'zhou']
['wang', 'zhao', 'qian', 'sun', 'li', 'zhou']
#再运行一次
print(names)
del names[0]
print(names)
['wang', 'zhao', 'qian', 'sun', 'li', 'zhou']
['zhao', 'qian', 'sun', 'li', 'zhou']

  1. 使用方法pop()删除元素 默认删除列表末尾的元素、也可以再括号中填写元素下标(索引),并且你能接着使用它;可以应用再购买数据中可以查看最后一次购买的是什么而且不会丢失此数据
print(names)
list1=names.pop()
print(names)
print(list1)
['zhao', 'qian', 'sun', 'li', 'zhou']
['zhao', 'qian', 'sun', 'li']
zhou

list2=names.pop(0)
print(names)
print(list2)
['qian', 'sun', 'li']
zhao

names.insert(0,"zhao")
print(names)
['zhao ', 'qian', 'sun', 'li']
  1. 根据值删除元素 方法remove() 也需要有数值
print(names)
['zhao', 'qian', 'sun', 'li']

names.remove("zhao")
print(names)
['qian', 'sun', 'li']

names.insert(0,"zhao")
names.insert(0,"wang")
print(names)
['wang', 'zhao', 'qian', 'sun', 'li']
#可以记录为什么删除
why="wang"
names.remove(why)
print(names)
print(f"因为第一位不是: {why}")
['zhao', 'qian', 'sun', 'li']
因为第一位不是: wang

今天练习

邀请三位

personnels=["ding yi","bai er","shang san"]
['ding yi', 'bai er', 'shang san']

有一位无法参加 需要替换新的人


Unable_to_participate_1="ding yi"
personnels.remove(Unable_to_participate_1)
print(personnels)
['bai er', 'shang san']
personnels.append("li si")
print(personnels)
['bai er', 'shang san', 'li si']

再添加三位

personnels.insert(0,"wang wu")
personnels.insert(3,"zhao liu")
personnels.append("sun qi")
print(personnels)
['wang wu', 'bai er', 'shang san', 'zhao liu', 'li si', 'sun qi']

缩减名单 只留2位 并且每删除一个就要打印一次

print(f"{personnels.pop()},很抱歉 因为我的疏忽无法进行了")
print(f"{personnels.pop()},很抱歉 因为我的疏忽无法进行了")
print(f"{personnels.pop()},很抱歉 因为我的疏忽无法进行了")
print(f"{personnels.pop()},很抱歉 因为我的疏忽无法进行了")
sun qi,很抱歉 因为我的疏忽无法进行了
li si,很抱歉 因为我的疏忽无法进行了
zhao liu,很抱歉 因为我的疏忽无法进行了
shang san,很抱歉 因为我的疏忽无法进行了

最后使用del删除所有内容

del personnels[0]
print(personnels)
del personnels[0]
print(personnels)
['bai er']
[]

第一天字符串的练习

使用字符串输出一段话 zhang san likes python 其中要把名字赋值给一个变量 python赋值给一个变量 首字母大写
然后进行输出的结果为:

Zhang San likes Python!!!

这里引入了一个python3.6才有的f字符串 3.6之前的版本使用format()

name="zhang san"
content="python"
print(f"{name}{content}")
zhang sanpython

这里可能有人想了我直接用print输出不就好了吗

print(name,content)
zhang san python

这里是有差距的 并未将其关联到一起 而且f字符串是可以赋值给变量的

  • 其中print为什么与f字符串输出不一致 这其中除了空格的差距还有什么区别?
combination=f"{name}{content}"
print(combination)
zhang sanpython

现在用的f字符串是简单的应用 其中可以嵌套title() rstrip()等方法或是直接输入字符串
完成上述任务

#不要忘记title()方法的括号 自己运行时忘记添加括号出错了
print(f"{name.title()} likes {content.title()}!!!")
Zhang San likes Python!!!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值