У меня есть файл, который содержит информацию, подобную приведенной ниже:
1/1/2010
1-2-3-4
1
1/2/2010
1-5-6-7
111
etc.
Я хочу иметь возможность записать это в другой файл, где каждый экземпляр '-'
заменяется на ','
.Я попытался использовать str.split('-')
и понимаю, что не могу записать список в файл после получения этой ошибки
TypeError: must be string or read-only character buffer, not list
Я также пытался использовать str.replace('-', 'i')
, но все это дает мне еще одну ошибку
TypeError: replace() takes at least 2 arguments (1 given)
Может ли кто-нибудь указать мне правильное направление?
Я должен также указать причину, по которой я пытался использовать str.split()
, в первую очередь потому, что в конечном итоге все это будет помещено в словарьвот так
{0:[['1/1/2010], ['1', '2', '3', '4'], ['1']], 1: [['1/2/2010'], ['1', '5', '6', '7'], ['111']], etc.}
Просто обновление ... Я нашел простой способ сделать это с помощью регулярных выражений, который не был упомянут.
>>> def test(filename):
import re
input_file = open(filename, 'r')
output_file = open('test.txt', "w")
for line in input_file:
line = line.strip()
line = re.sub('-', ',', line)
output_file.write(line)
output_file.write('\n')
input_file.close()
output_file.close()