在Python3

时间:2016-05-01 15:48:17

标签: python list python-3.x scripting

我是Python新手,我正在使用Python3。我需要转换带有元组的列表(

randstr = list("QWERTYUIOPASDFGHJKLZXCVBNM")
randint = list("1234567890")

shuffle(randint)
shuffle(randstr)

print(zip(randint[:6], randstr[:6]))

它有效,我得到里面有元组的列表,如:

[('6', 'Q'), ('0', 'P'), ('3', 'H'), ('5', 'B'), ('2', 'U'), ('4', 'E')]
[('9', 'E'), ('1', 'Q'), ('7', 'D'), ('4', 'A'), ('3', 'T'), ('0', 'X')]
[('4', 'P'), ('9', 'B'), ('2', 'S'), ('1', 'A'), ('3', 'Y'), ('7', 'F')]

但是,我想输出字符串,而不是列表(我需要没有元组的字符串),比如

"6Q 0P 3H 5B 2U 4E"

如果您想知道,我正在尝试制作一个随机更改我的mac地址的脚本。感谢

2 个答案:

答案 0 :(得分:1)

使用str.join()加入字符串对并构造结果字符串:

>>> " ".join(["".join(item) for item in zip(randint[:6], randstr[:6])])
'3D 4V 6L 8W 0S 1I'

答案 1 :(得分:0)

只需使用格式并加入:

print(' '.join('%s%s' % i for i in zip(randint[:6], randstr[:6])))