我遇到了类似这样的问题:如何制作连续的字母列表python(从az到aa,ab,ac等)
但是,我正在像excel这样在gui中做一个列表,其中垂直标题上应该是字母... aa,ab,ac .... dg,dh,di ...为此,我必须声明每个位置在我的清单上要写一封信。产量可能是不可能的。
我的意思是,让我说,我有100个单元格,我想给它们起不同的名字。单元格1应该为“ A”,单元格2应该为“ B”。...单元格27应该为“ AA”,依此类推。您可能是从excel知道的。我可以手动完成,但是要花很多时间。
好吧,我尝试在下面使用此代码,但没有成功。我知道某个地方应该有一个循环,但是我不知道在哪里。
from string import ascii_lowercase
import itertools
def iter_all_strings():
for size in itertools.count(1):
for s in itertools.product(ascii_lowercase, repeat=size):
yield "".join(s)
for s in iter_all_strings():
print(s)
if s == 'bb':
break
作用域:“对于iter_all_strings()中的s:”一直计数到中断为止。我会说这应该是我的单元格迭代的循环。那里没有地方。
如果您想更深入地研究(创建约18,000列),则可以选择另一种方法:
from string import ascii_lowercase
letters = list(ascii_lowercase)
num_cols = 100
excel_cols = []
for i in range(0, num_cols - 1):
n = i//26
m = n//26
i-=n*26
n-=m*26
col = letters[m-1]+letters[n-1]+letters[i] if m>0 else letters[n-1]+letters[i] if n>0 else letters[i]
excel_cols.append(col)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句