python循环修改列表_循环中列表项的修改(python) - python

这篇博客探讨了在Python中如何正确修改列表项,解决了'list indices must be integers, not str'的错误。此外,还介绍了如何检查Redis服务器的运行状态,确保Python服务能成功连接。" 109033243,8765255,Google表格中的VLOOKUP函数使用指南,"['数据分析', 'Excel技巧', '电子表格', 'Google应用']
摘要由CSDN通过智能技术生成

我正在尝试使用for循环修改列表中的项目,但出现错误(请参见下文)。样例代码:

#!/usr/bin/env python

# *-* coding: utf8 *-*

data = []

data.append("some")

data.append("example")

data.append("data")

data.append("here")

for item in data:

data[item] = "everything"

错误:

Traceback (most recent call last):

File "./testy.py", line 11, in

data[item] = "everything"

TypeError: list indices must be integers, not str

有什么办法解决这个问题?

参考方案

尝试以下方法:

for i in xrange(len(data)):

data[i] = "everything"

您遇到的基本问题是,当您编写data[i]并将data作为列表时,i需要为整数,即列表中的数字索引。但是在循环中

for item in data

item是列表中的实际事物,即字符串,而不是事物的数字索引。 xrange是一个迭代器,它生成数字而不是列表中的值,因此您可以使用它。

一个替代方案是

for i, _ in enumerate(data):

data[i] = "everything"

enumerate函数为您提供了一个(index, item)形式的元组的迭代器,因此您所需要做的就是获取索引而忽略该项目。我不确定一种或另一种方式(enumerate或xrange)是否会明显更快或更佳,因为我认为列表将其长度存储在变量中,因此可以快速访问它而无需计算列表元素。

但是,如果您需要旧的列表值来计算新的列表值,则enumerate的方法可能会稍快一些,因为可以避免让Python查找列表中的元素:

for i, item in enumerate(data):

data[i] = func(item)

这种事情最好用列表理解来表达:

data = [func(item) for item in data]

执行此操作时,Python将遍历data中的每个项目,对其应用功能,并根据结果自动构造一个新列表,因此您不必担心将func(item)的结果放在正确的位置。清单。您原来的示例实际上可以表示为

data = ["everything" for item in data]

Python uuid4,如何限制唯一字符的长度 - python

在Python中,我正在使用uuid4()方法创建唯一的字符集。但是我找不到将其限制为10或8个字符的方法。有什么办法吗?uuid4()ffc69c1b-9d87-4c19-8dac-c09ca857e3fc谢谢。 参考方案 尝试:x = uuid4() str(x)[:8] 输出:"ffc69c1b" Is there a way to…Python-如何检查Redis服务器是否可用 - python

我正在开发用于访问Redis Server的Python服务(类)。我想知道如何检查Redis Server是否正在运行。而且如果某种原因我无法连接到它。这是我的代码的一部分import redis rs = redis.Redis("localhost") print rs 它打印以下内容

我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…Python:图像处理可产生皱纹纸效果 - python

也许很难描述我的问题。我正在寻找Python中的算法,以在带有某些文本的白色图像上创建皱纹纸效果。我的第一个尝试是在带有文字的图像上添加一些真实的皱纹纸图像(具有透明度)。看起来不错,但副作用是文本没有真正起皱。所以我正在寻找更好的解决方案,有什么想法吗?谢谢 参考方案 除了使用透明性之外,假设您有两张相同尺寸的图像,一张在皱纹纸上明亮,一张在白色背景上有深…Python-crontab模块 - python

我正在尝试在Linux OS(CentOS 7)上使用Python-crontab模块我的配置文件如下:{ "ossConfigurationData": { "work1": [ { "cronInterval": "0 0 0 1 1 ?", "attribute&…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值