python-3.x - 在 python 3 中编辑列表的元素
问题描述
我的问题是一个两部分的问题。
如果给你一个清单
numbers = [10, 20, 30, 100]
并且您希望通过向每个元素添加 10 来编辑列表中的每个元素。我该怎么做呢?您是否能够在不创建单独列表的情况下做到这一点?
同样,如果给您一个列表,例如:
words = ['hello', 'hey', 'hi']
并希望将列表中的每个字母 h 更改为另一个字母说 'r' 它会是与最后一个类似的算法吗?
解决方案
因为您说您不想创建新列表,所以您不能像@gcandal 建议的那样使用列表理解或映射函数。你可以试试这个。
def update_list(l, fn):
for i in range(len(l)):
l[i] = fn(l[i])
update_list(numbers, lambda a: a + 10)
update_list(words, lambda s: s.replace('h', 'r'))
推荐阅读
- python - 如何让控制台“记住” Python 中的用户输入?
- java - 用于 postgreSQL 的 jdbc 驱动程序的 Jar 文件未出现在数据库连接的 JAR 列表中(eclipse)
- reactjs - 路由器在使用 WebRTC 的 React 应用程序中无法正常运行
- discord - discord.js 节点通过用户名获取用户
- angular - Angular 12 HttpInterceptor 等到http客户端方法完成
- python - 通过加入 ArcGIS 表更新 SQL 表时出错
- chart.js - chart.js 如何强制最小和最大 y 轴值
- r - 未知或未初始化的列:; 找不到对象
- typescript - 如何在我的 3d raymarched 世界中正确平移/旋转我的相机
- pip - 安装“bincopy”时出错——pip install bincopy