Python的添加或在特定位置删除字母
我有一个问题:Python的添加或在特定位置删除字母
如果非要使用random.choice产生类似
['a', 'o', 'r', 'x', ' ', 's', 'n', ' ', 'k', 'p', 'l', 'q', 't']
如何添加例如3个字母( )在此列表中的每个字符串之前和之后?
你应该做到以下几点:
- 生成一个包含所有字母
- 使用
ranodm.sample()
代替random.choice()
产生的3个随机字母列表,你这时应该join()
- 返回一个字符串新元素就地列表
看起来像这样:
import string
import random
def add_str(lst):
_letters = string.ascii_letters
return [''.join(random.sample(set(_letters), 3)) + letter + ''.join(random.sample(set(_letters), 3))
for letter in lst]
print(add_str(['a', 'o', 'r', 'x', ' ', 's', 'n', ' ', 'k', 'p', 'l', 'q', 't']))
> ['FUsaeNZ', 'pASoiTI', 'XfbrUXe', 'ZyKxhSs', 'lIJ blk', 'bJXseAI', 'uFcnUeQ', 'KRd wfF', 'VyPkjvq', 'CbwpCro', 'QOTlNfi', 'UNuqRDe', 'hEjtnIv']
我想你想在字符串的每个字母的开头和结尾有不同的字母。如果你需要他们是相同的,你可以处理它。既然你没有提供任何的例子,我回答了你确切的问题和我从中理解的东西。如果你需要别的东西(看起来就像是评论中的情况),你可以从哪里开始
谢谢,它工作。但是有什么办法可以将输出合并为一个字符串? –
用途:'print(''。join(add_str(['a','o','r','x','','s','n','','k','p ','l','q','t'])))' – 2017-06-22 14:04:48
好的,最后一个问题:当我想删除那些额外的字符时,我应该怎么做相反的事情? –
你在问之前试过做什么?什么是预期的输出?你传递给'random.choice()'什么? ''a''后应该有3或6个字符 – depperm
与你所拥有的相同 –
并编辑你的问题,请参阅https://stackoverflow.com/help/how-to-ask –