Python 用于枚举迭代
我正在迭代子文件夹A、B、C、D、E、F、G、H、I、J、KPython 用于枚举迭代,python,Python,我正在迭代子文件夹A、B、C、D、E、F、G、H、I、J、K 这段代码工作得很好,但如何避免在for语句中写入所有字符串[“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”]?如果您是根据数字工作的,可以这样做: for v in enumerate (["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K"]) folder = "/Users/Name/Desktop/Datas/" + v
这段代码工作得很好,但如何避免在for语句中写入所有字符串[“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”]?如果您是根据数字工作的,可以这样做:
for v in enumerate (["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K"])
folder = "/Users/Name/Desktop/Datas/" + v
csvFiles = glob.glob (os.path.join (folder, "*.csv"))
df = (pd.read_csv(i) for i in csvFiles)
df = pd.concat (df, ignore_index=True)
如果您使用的是连续字母表,则可以使用:
import string
letters = [string.ascii_uppercase[i] for i in range(11)]
字符串也是可编辑的:) 您可以比较字符串:
Python 2.7.14+ (default, Dec 5 2017, 15:17:02)
[GCC 7.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> for x in enumerate('ABC'):
... print x
...
(0, 'A')
(1, 'B')
(2, 'C')
>>'A'<'V'
真的
>>>“E”<“V”
真的
>>>“E”<“D”
假的
>>>“A”<“C”<“K”
真的
它不应该是范围(11)
,因为需要包括K
吗?当你可以只做字母=ascii\u大写[:11]
时,它似乎是多余的。也许你只是想要操作系统。行走
?
Python 2.7.14+ (default, Dec 5 2017, 15:17:02)
[GCC 7.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> for x in enumerate('ABC'):
... print x
...
(0, 'A')
(1, 'B')
(2, 'C')
>>> 'A' < 'V'
True
>>> 'E' < 'V'
True
>>> 'E' < 'D'
False
>>> 'A' < 'C' < 'K'
True