【问题标题】:how to increment a global char inside a for loop? django如何在 for 循环中增加全局字符? django
【发布时间】:2018-02-17 18:36:30
【问题描述】:

我是在一个不在 django 模板中的视图中执行此操作

我想尝试在 for 循环中用数字递增一个字符,但不知何故我一直得到相同的字符。

假设我想要A0, A1, A2 up to A9 then B0, B1 up to B9

有人可以帮帮我吗?

我有类似的东西,但它不断给我B

    start_char = 'A'
    for x in range(15):
        ending_number = str(x)[-1]
        print(chr(ord(start_char) + 1) + ending_number)

【问题讨论】:

  • 试试print(chr(ord(start_char) + x))
  • @bulbus 我的解释不好,让我编辑我的帖子。
  • print(chr(ord(start_char) + x/10) + str(x%10))
  • @bulbus 啊!所以你刚刚做的是x/10,第一个0-9实际上会给出0,这意味着没有增量,然后10-19将是一个增量,依此类推,然后x%10得到最后一个数字/
  • 没错!是的,1/10=9/10...=0,10/10,11/10...=1;; 1%10=11%10=1,2%10=12%10=2...

标签: python django for-loop char increment


【解决方案1】:

print(chr(ord(start_char) + x/10) + str(x%10))
下面的解释...
对于第一个字符的增量,请使用 div by int
1/10 = 9/10...=0
10/10=11/10...=1
对于尾随数字,使用余数运算符
1%10=11%10=1
2%10=12%10=2...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-30
    • 2016-02-18
    • 2015-04-15
    • 2021-12-17
    • 2017-01-26
    • 2018-09-15
    • 1970-01-01
    相关资源
    最近更新 更多