小编hum*_*der的帖子

Python通过CSV文件及其列循环

所以我看到这样做是在这里提出的其他问题,但我仍然有点困惑.我在过去的几天里一直在学习python3,并且认为我已经开始研究一个真正让我的手弄脏的项目了.我需要遍历一定数量的CSV文件并对这些文件进行编辑.我在访问特定列时也遇到了问题,而且在python中也存在循环问题.我习惯了惯例(int i = 0; i <expression; i ++),但在python中它有点不同.到目前为止,这是我的代码,我将解释我的问题所在.

import os
import csv

pathName = os.getcwd()

numFiles = []
fileNames = os.listdir(pathName)
for fileNames in fileNames:
    if fileNames.endswith(".csv"):
        numFiles.append(fileNames)

for i in numFiles:
    file = open(os.path.join(pathName, i), "rU")
    reader = csv.reader(file, delimiter=',')
    for column in reader:
        print(column[4])
Run Code Online (Sandbox Code Playgroud)

我的问题出在这一行:

for column in reader:
        print(column[4])
Run Code Online (Sandbox Code Playgroud)

所以在文档中,它说列是变量,读者是我正在循环的.但是当我写4时,我得到了这个错误:

IndexError: list index out of range
Run Code Online (Sandbox Code Playgroud)

这是什么意思?如果我写0而不是4,则打印出每个CSV文件的第0列单元格0中的所有值.我基本上需要它来浏览每个CSV文件的第一行并找到一个特定的值,然后浏览整个列.提前致谢!

python csv python-3.x

7
推荐指数
2
解决办法
4万
查看次数

将协议添加到超类,这将强制从它继承的其他类实现协议

所以我是 iOS 开发的新手,并且在我的实习期间一直致力于对具有相对较大的 Objective-c 代码库的应用程序进行细微的更改。我一直在从 Treehouse 快速学习(哇,爱他们!),我刚刚了解了协议。目前,它们应该在某些情况下使用,并且教师使用了这个例子。

假设您有一家拥有两种不同类型员工的公司:Salary 和 Hourly(很常见)。现在,他们都将从一个名为 Employee 的超类继承,并且都必须调用一个名为“pay”的函数来支付雇员的工资。您如何强制这些类来实现该功能?当然,使用协议,但这需要您记住将其添加到函数声明中。有没有办法将协议添加到超类“Employee”,然后从该类继承的任何内容都必须遵循该超类的一部分的协议。有没有另一种方法可以做到这一点?谢谢!

inheritance ios swift swift-protocols

4
推荐指数
1
解决办法
1582
查看次数

如何创建需要积分列表的函数

所以我正在学习Haskell上学,并在learnyouahaskell学习函数,语法和类型类,并且想知道我会创建一个以Integral列表作为参数的函数吗?

如果我正确理解这一点:

addVectors :: (Num a) => (a,a) -> (a,a) -> (a,a)
addVectors (x1,y1) (x2,y2) = (x1 + x2, y1 + y2)
Run Code Online (Sandbox Code Playgroud)

addVectors接受两组,基本上所有参数都必须是Number类?但是,如果我想要它列入数字或积分列表呢?

addList :: (Integral [b]) => [b] -> [b]
Run Code Online (Sandbox Code Playgroud)

但这显然不起作用.

haskell

-2
推荐指数
1
解决办法
48
查看次数

标签 统计

csv ×1

haskell ×1

inheritance ×1

ios ×1

python ×1

python-3.x ×1

swift ×1

swift-protocols ×1