讲述,寻求方法

时间:2019-07-17 19:56:26

标签: python python-3.x

使用seek()和read()方法从索引列表中检索隐藏的代码。

这是代码行为的示例:

>>>getCode("Da Vinci Code.txt", [4, 992, -26, 1242, 332])
'sofia'
def getCode(filename, indexes): 
    f=open(filename,'w')
    str=''
    for x in indexes:
        f.seek(x)
        str=str+f.read(x)
    return str
    f.close()

我在运行代码时出错:

Traceback (most recent call last):
File "Code", line 7, in getCode
File "/base/data/home/apps/s~pyschools2/888.418298200144529338/gaefile.py", line 223, in seek
raise IOError("Invalid argument")
IOError: Invalid argument

1 个答案:

答案 0 :(得分:0)

函数file.seek()file.read()似乎不支持否定参数。

您可以将代码更改为此

with open('test.txt') as f:
    for i in [5, 1, 99, 2, 5]:
        f.seek(i, 0)        # offset 'i' chars starting at position 0 each time
        c = f.read(1)       # read only 1 char
        print(i, repr(c))

,并且只能使用正数。您需要更改索引才能使此版本的代码正常工作。