3 回答

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個贊
import random
with open('source', 'r') as in_file:
with open('dest', 'w') as out_file:
for line in in_file:
newLine = ''.join(map(lambda x:x+' '*random.randint(0,1), line)).strip() + '\n'
out_file.write(newLine)
既然你提到是新人,我會試著解釋一下
為了預(yù)防起見,我正在將新序列寫入另一個文件。寫入您正在讀取的文件是不安全的。
with 構(gòu)造函數(shù)使您無需顯式關(guān)閉您打開的文件。
可以使用 for 循環(huán)逐行讀取文件。
''.join() 將列表轉(zhuǎn)換為字符串。
map() 將函數(shù)應(yīng)用于列表的每個元素,并將結(jié)果作為新列表返回。
lambda 是你定義一個函數(shù)而不命名它的方式。
lambda x: 2*x
你喂它的數(shù)量翻倍。x + ' ' * 3 在 x 后添加 3 個空格。random.randint(0, 1) 返回 1 或 0。所以我隨機(jī)選擇是否在每個字符后添加一個空格。如果 random.randint() 返回 0,則添加 0 個空格。
添加回答
舉報(bào)