как заставить работать приведенный ниже фрагмент кода - PullRequest
1 голос
/ 06 февраля 2012

Я вроде написал этот кусок кода:

import csv
import os
fileobj = csv.reader(open('c:\\paths1.csv', 'rb'), delimiter=' ', quotechar='|')
for row in fileobj:
    x=0 

    for x in fileobj:
        filesize= os.path.getsize(x)

    print (filesize);

Однако я все еще получаю эту ошибку:

Traceback (most recent call last):
  File "C:\Documents and Settings\Administrator\workspace\test1py\Acol.py", line 9, in <module>
    filesize= os.path.getsize(x)
  File "C:\Python27\lib\genericpath.py", line 49, in getsize
    return os.stat(filename).st_size
TypeError: coercing to Unicode: need string or buffer, list found

Я полагаю, это потому что fileobj содержит список путей ...

У кого-нибудь есть предложения?

1 Ответ

5 голосов
/ 06 февраля 2012

Вы хотите

for x in row: # NOT   in fileobj
    filesize = os.path.getsize(x)

Кстати, строка x = 0 не имеет никакого эффекта, кроме как сбить с толку ничего не подозревающего читателя.Вы должны удалить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...