首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python学习第23课-用for和range循环修改列表

假设我们拿到一些用户通过网络平台给我们提交的信息,这些信息包括用户填写的姓名,有的用户姓名首字母是小写,有的是大写,现在我们需要把这些名字的首字母都转换成大写。

那我们就可以把这些名字放入一个列表,然后进行处理,处理修改这个列表的过程,我们用for循环和range()函数实现。

实例1

names1=["tom","jimmy","william","john","mike"]

for index in range(len(names1)):

names[index]=names1[index].title()

print(names1)

#运行结果:

["Tom","Jimmy","William","John","Mike"]

实例逻辑说明:

①首先创建一个列表names,names里面存放的是一些名字。

②我们要把列表names里面的名字全部都要处理,即把每一个名字首字母一个一个逐个变成大写。重复做一件事情应该用循环,所以我们用for循环去实现。

③如何循环呢?因为我们不知道有多少用户会填写姓名,所以列表names中的名字数量是不确定的。名字的数量我们不知道,我们不可能一个一个去数,这时就用列表的内置方法len()去获取列表中的名字数量,即len(names)。

这个数量,我们把它作为range()函数的stop参数。

④for循环的格式语法是:

for 变量 in 序列:

那么这个序列我们用range(len(names))实现,变量可以使用任意合法的变量名,由于列表中有多少个元素,就会有多少个索引,为了方便理解,我们用index作为这个for循环语句中的变量名。即相当于通过循环迭代列表names中的元素的索引,来实现重复操作后面的执行语句。

⑤names中有多少名字,就有多少索引。

⑥循环开始,第一个名字“tom”,对应的索引就是0,此时index中就是0,找到names中的第一个元素,即names[0],把它首字母变成大写,即names[0].title(),以此类推。

实例2

假设有一些名字,given name和last name首字母都大写,我们把他们全都变成小写。

names2=["Tom Zhao","Jimmy Qian","William Sun","John Li","Mike Zhou"]

new_names2=[]

for name in names2:

new_names2.append(name.lower().replace("","_"))

print(new_names2)

#运行结果

["tom_zhao","jimmy_qian","william_sun","john_li","mike_zhou"]

跟我一起学习Python

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190130G1C8U900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券