列表索引可以在macOS上运行,但不能在Windows上运行?

约书亚·扎切克(Joshua Zacek):

因此,我在macOS上制作了一个脚本,并与一些朋友一起分发了该脚本。

但是,使用Windows的朋友向我抱怨说该脚本不适用于他们。

果然,我在分区上安装了Windows并运行了我的脚本,但它不起作用。

每个人都有同样的错误。

    data[k+1][16] = 0
IndexError: list assignment index out of range

这是代码部分失败的示例

df = pd.read_csv("passandpy.csv", usecols=[16], skipinitialspace=True)
col16 = df['Failed Attempts'].tolist()
data = [line for line in csv.reader(open('passandpy.csv'))]
data[k+1][16] = 0
csv.writer(open('passandpy.csv', 'w')).writerows(data)

应该发生的是,从csv文件中读取了列16,并将其转换为列表。然后,创建另一个名为data的列表,并将csv中的所有行写入该列表中。我编辑该列表中的值,然后将列表保存回csv。

我还要提到的一件事是,一旦该脚本在Windows上运行,它也将不再在macOS上运行。

删除Windows上创建的csv文件并使用macOS使用脚本生成一个文件后,该脚本将再次起作用。

约书亚·扎切克(Joshua Zacek):

好吧,我发现了问题。

在Windows上,它正在向.csv文件中写入多余的空行。这导致列表索引停止工作。

我用这段代码修复了它。

data = []
lines = [line for line in csv.reader(open('passandpy.csv','r'))]
for line in lines:
    if line == []:
        continue

它过滤空白行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

可以在Linux上正常运行程序,但不能在Windows上运行

Java提示可以在Windows上运行,但不能在Ubuntu上运行

可运行的.jar可在Ubuntu上运行,但不能在Windows上运行

WebDriver可以在Chrome上运行,但不能在Internet Explorer上运行

用户脚本通知可以在Chrome上运行,但不能在Firefox上运行?

更改某些值后,iframe可以在chrome上运行,但不能在mozilla上运行

网站可以在Chrome上运行,但不能在Firefox上运行吗?

测试的顺序可以在python 2上完美运行,但不能在python 3上完美运行

Flexbox可以在Firefox上运行,但不能在Edge上运行吗?

jQuery代码可以在localhost上正常运行,但不能在服务器上运行

脚本可以在CentOS上正常运行,但不能在RHEL5上运行

Dockerfile 容器可在 Mac 上运行,但不能在 Windows 上运行

NotifyIcon Windows 10可在Debug上运行,但不能在Publish上运行

C++ 程序在 Linux 上运行完美,但不能在 Windows 上运行

Python日志记录可在Windows上运行,但不能在Mac OS上运行

能够在Mac和Windows上运行jar,但不能在Ubuntu上运行

cpp exe文件可在wsl上运行,但不能在Windows10 cmd上运行

Kivy应用程序可在Windows 7上运行,但不能在ubuntu上运行

脚本可在 Windows 上运行,但不能在 Linux 上运行?

Android相机可以在模拟器上运行,但不能在手机上运行?

Docker构建可以在我的机器上运行,但不能在Gitlab CI中运行

Javascript 可以在桌面上运行,但不能在移动浏览器上运行

Rails:jQuery-Ui可以在本地主机上运行,但不能在heroku上运行

Wamp Server 3.0.6可以作为localhost正常运行,但不能在网络上运行

LibGDX游戏可以在桌面上正常运行,但不能在Android设备上运行

闪亮的应用程序可以在本地运行,但不能在 Shinyapps.io 上运行

可以在命令行上运行,但不能在 shell 脚本中运行吗?

Kivy - Urlrequest 可以在我的电脑上运行,但不能在我的手机上运行

MySQL可在localhost上运行,但不能在线运行