我的列表中有超过30个字符的项。我想循环浏览整个列表,使每个项目最多30个字符。我使用此代码手动更改列表中的第一项,以获得以下结果:
sites = [
'520 Slick Boat Ramp (Banana Riv',
'Eau Gallie Pier (Indian River)',
'Geiger Point; Melbourne Causeway at (Indian River)',
'Kelly Park (Banana River)',
'NASA Causeway; SE side of (Indian River)',
'Parrish Park Boat Ramp (Indian River)',
'Port St. John Boat Ramp (Indian River)',
'Ramp Road Park Boat Ramp (Banana River)'
]
sites[0]=sites[0][0:31]
如果您想简单地将每个字符串切掉30个字符,可以执行以下操作:
或
(谢谢伊瓜加特)
如果要筛选列表,以便只筛选长度小于30个字符的字符串,则可以执行以下操作
编辑: 正如John Coleman所说,使用
sites.index(s)
并不是真正有效的,因此如果您想使用for循环,最好使用Błotosmętek描述的方法:有几种可能的方法。最优雅的是Iguanaaut的评论,并使用了列表理解。但是,如果出于任何原因不想使用列表理解,则需要使用for循环,如下所示:
或者这个:
虽然第一种方法更为常见,但第二种方法被认为更具python风格。根据我的测试,它也稍微快一点,但这可能取决于Python版本
相关问题 更多 >
编程相关推荐