Python中print打印输出时如何去掉逗号、括号、大括号符号?
问题原因
你的代码直接打印random.sample()返回的列表对象,才会输出带方括号、逗号的结构,只需将列表内的元素拼接为纯字符串再打印即可匹配预期格式。
修改后完整代码
# 三和弦生成器 import random roots = ("A", "A♯", "B", "B♯", "C", "C♯", "D", "D♯", "E", "E♯", "F", "F♯", "G", "G♯", "A♭", "B♭", "C♭", "D♭", "E♭", "F♭", "G♭") triad_types = ('', '⁻', '⁺', 'ᵒ') three_string_groups = ('654', '653', '652', '651', '643', '642', '641', '632', '631', '621', '543', '542', '541', '532','531', '521', '432', '431', '421', '321') inversion = ("根音位置", "第一转位", "第二转位") print("\n\n\n三和弦进行:") print(''.join(random.sample(roots, 1) + random.sample(triad_types, 1))) print(''.join(random.sample(roots, 1) + random.sample(triad_types, 1))) print(''.join(random.sample(roots, 1) + random.sample(triad_types, 1))) print(''.join(random.sample(roots, 1) + random.sample(triad_types, 1))) print("\n起始位置:") print(' '.join(random.sample(three_string_groups, 1) + random.sample(inversion, 1)))
修改说明
- 用
''.join()方法将随机选出的根音、和弦类型拼接为完整和弦名字符串,打印时不会出现列表格式符号 - 起始位置打印用
' '.join()拼接,保证把位编号和转位名称之间有空格,符合输出要求 - 所有英文提示文本、转位名称均已翻译为中文
内容的提问来源于stack exchange,提问作者coslito
相关产品推荐
相关产品推荐

