我正在尝试使用以下列表: [(1,4),(2,2)]
得到: [(A,4),(B,2)]
我正在尝试使用'string.ascii_lowercase'我将如何在Python3中完成此操作,这是一个编码挑战,以获得尽可能少的字符。
感谢您的帮助!
答案 0 :(得分:0)
我不打算为你解决,但我建议你调查ord
和docker exec -it <container_ID> bash
函数。请注意,“a”的ASCII代码是97,因此要将1转换为“a”,您必须为其添加96.
答案 1 :(得分:0)
我建议你按照上面B.Eckles给出的建议,因为你会更好地学习,并且可能找到一个较短的(字符方式)解决方案。
但是,如果你想坚持使用 string.ascii_lowercase ,下面的代码片段可以从以下开始:
import string
a = [(1,4),(2,2)]
b = []
for (first, second) in a:
b.append(
(string.ascii_lowercase[(first-1) % len(string.ascii_lowercase)],
second))
print b
在这种情况下,打印的解决方案将是:
[('a', 4), ('b', 2)]
我已插入模块(即%len(string.ascii_lowercase))以避免越界访问。请注意,值0会以这种方式产生'z'。
希望它有所帮助!