![]() |
AA01-AZ99 BA01-BZ99...ZA01-ZZ99python代码
genecode.py:
chrs='ABCDEFGHIJKLMNOPQRSTOVWXYZ' nums='0123456789' for i in range(0, 26): for j in range(0, 26): for k in range(1, 100): tt='0'+str(k) strs=chrs[i]+""+chrs[j]+tt[len(tt)-2:len(tt)] print(strs) |
引用:
一、原代码存在的问题 字符集错误:chrs 中少了字母 U(原字符串是 ABCDEFGHIJKLMNOPQRSTOVWXYZ,缺失 U),导致生成的组合中永远没有以 U 开头或第二位为 U 的情况。 数字处理冗余:tt='0'+str(k) 再截取后两位的写法不够简洁,且 k 从 1 到 99 时,str(k) 本身长度为 1 或 2,直接用 zfill(2) 补零更高效。 循环嵌套格式问题:原代码没有正确缩进(Python 中循环嵌套必须缩进),运行会报错 IndentationError。 无用变量:nums 变量定义后未使用,属于冗余代码。 二、修正后的代码 # 修正字符集(补充缺失的 U),优化数字补零逻辑,规范缩进 chrs = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' # 补充 U 字母 # 三层循环生成:两位字母 + 两位数字(AA01 ~ ZZ99) for i in range(26): for j in range(26): for k in range(1, 100): # k 取值 1-99,对应 01-99 # 数字补零为两位(1→01,10→10,99→99) num_str = str(k).zfill(2) # 拼接结果(字母i + 字母j + 两位数字) result = chrs[i] + chrs[j] + num_str print(result) |
引用:
|
| 所有时间均为 +8, 现在的时间是 2025-12-01 01:53. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions, Inc.