将我的部分输出代码更改为 python 中的字母数字
Changing a part of my output code to alphanumerics in python
我有一个脚本,它结合了一个随机字符串和一个时间戳 -
def randomStringDigits(stringLength=6):
"""Generate a random string of letters and digits """
lettersAndDigits = string.ascii_letters + string.digits
return ''.join(random.choice(lettersAndDigits) for i in range(stringLength))
letters = string.ascii_uppercase
import datetime
# Current time
now = datetime.datetime.now()
datestr = now.strftime("%m%d%H%M%Y")
rdmCode = randomStringDigits(6) + datestr
我想将月份和小时更改为他们的字母数字伙伴,也就是 01=a、02=b 等。
我希望月份大写,小时小写。例如,此代码将打印 - dtwk0T040713492020 我希望它是 dtwk0TD07m492020
我是编码新手,所以不确定应该从哪里开始,我应该将字符串拆分成数组吗?
提前感谢您的帮助。
创建字典,将月份数字与字母配对:
mdict={1:'A',2:'B'}
你只需在中间添加字母:
datestr = now.strftime(mdict[now.month]+"%mm%d%H%M%Y")
注意:如果数字<-->字母关系是字母顺序你可以使用:
chr(ord('@')+number) #Capital letters
chr(ord('`')+number) #lower case letters
也就是说,你可以使用这样的东西:
datestr = now.strftime(chr(ord('@')+now.month)+"%d"+chr(ord('`')+now.hour)+"%M%Y")
我有一个脚本,它结合了一个随机字符串和一个时间戳 -
def randomStringDigits(stringLength=6):
"""Generate a random string of letters and digits """
lettersAndDigits = string.ascii_letters + string.digits
return ''.join(random.choice(lettersAndDigits) for i in range(stringLength))
letters = string.ascii_uppercase
import datetime
# Current time
now = datetime.datetime.now()
datestr = now.strftime("%m%d%H%M%Y")
rdmCode = randomStringDigits(6) + datestr
我想将月份和小时更改为他们的字母数字伙伴,也就是 01=a、02=b 等。
我希望月份大写,小时小写。例如,此代码将打印 - dtwk0T040713492020 我希望它是 dtwk0TD07m492020
我是编码新手,所以不确定应该从哪里开始,我应该将字符串拆分成数组吗?
提前感谢您的帮助。
创建字典,将月份数字与字母配对:
mdict={1:'A',2:'B'}
你只需在中间添加字母:
datestr = now.strftime(mdict[now.month]+"%mm%d%H%M%Y")
注意:如果数字<-->字母关系是字母顺序你可以使用:
chr(ord('@')+number) #Capital letters
chr(ord('`')+number) #lower case letters
也就是说,你可以使用这样的东西:
datestr = now.strftime(chr(ord('@')+now.month)+"%d"+chr(ord('`')+now.hour)+"%M%Y")