Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python函数,每次调用时旋转文件_Python_Oauth - Fatal编程技术网

Python函数,每次调用时旋转文件

Python函数,每次调用时旋转文件,python,oauth,Python,Oauth,我正在使用OAuth进行一个项目,并且有三组密钥可以在单独的csv文件中访问。是否有一种方法可以编写一个函数,每次调用该函数时都可以访问三个文件中的一个(按顺序,1、2、3、重复)?我能想到的唯一方法是在“没有全局变量”的情况下,在我的主函数中加入某种变量来跟踪。但是,我还没能破解/google fu我的方法解决这个问题。使用iter在代码开头创建文件名迭代器: names = iter([1,2,3]) print(next(names)) print(next(names)) print(n

我正在使用OAuth进行一个项目,并且有三组密钥可以在单独的csv文件中访问。是否有一种方法可以编写一个函数,每次调用该函数时都可以访问三个文件中的一个(按顺序,1、2、3、重复)?我能想到的唯一方法是在“没有全局变量”的情况下,在我的主函数中加入某种变量来跟踪。但是,我还没能破解/google fu我的方法解决这个问题。

使用iter在代码开头创建文件名迭代器:

names = iter([1,2,3])
print(next(names))
print(next(names))
print(next(names))
1
2
3
或itertools.cycle:

from itertools import cycle
names = cycle([1,2,3])
print(next(names))
print(next(names))
print(next(names))
print(next(names))
print(next(names))
print(next(names))
1
2
3
1
2
3
在函数中,只需使用带有open next(名称)的
作为f:…
,其中
名称包含文件名/路径。

与生成器一起:

def accessInSequence():
    while True:
        accessFileOne()
        yield
        accessFileTwo()
        yield
        accessFileThree()
        yield

mySequence = accessInSequence()
mySequence() #file 1
mySequence() #file 2
# ...