Ive получил этот код из replacing text in a file with Pythonзамещающие строки в файл из другого текстового файла с Python
import re
repldict = {'zero':'0', 'one':'1' ,'temp':'bob','garage':'nothing'}
def replfunc(match):
return repldict[match.group(0)]
regex = re.compile('|'.join(re.escape(x) for x in repldict))
with open('file.txt') as fin, open('fout.txt','w') as fout:
for line in fin:
fout.write(regex.sub(replfunc,line))
, но я не могу загрузить repldict из другого текстового файла. я попытался с
repldict={line.strip() for line in open(syspath+'/rules.txt', 'r')}
Но это не работает.
Как данные расположены в файле ? –
Похоже, вы пытаетесь создать словарь через понимание словаря? 'repldict = {line.strip() для строки в open (syspath + '/ rules.txt', 'r')}'. Это не имеет пары ключей, значений, которые я могу видеть. Догадка: вам нужно загрузить файл, разделить каждую строку на разделитель (например, запятую, пробел), а затем использовать индексирование, чтобы определить, какое слово является ключом, и какое слово является значением, которое должно использоваться в качестве замены для слово, которое вы определили как ключ. – roganjosh