2016-12-12 3 views
-2
sentence = input("Please enter a sentence:") 

words = sentence.split() 

position= [0] 

for count, i in enumerate(words): 

    if words.count(i) <2: 

     position.append(max(position) +1) 

    else: 
     position.append(words.index(i) +1) 

position.remove(0) 

print (position) 

words = str(words) 

position = str(position) 

file = open("list_and_positions_of_words.txt","w") 

file.write (words +'\n') 

file.write(position) 

file.close() 

Пример: Привет, что вы делаете сегодня?снятие квадратных скобок и запятых, но не запятая в предложении

Моя программа воссоздает слова в позиции, поэтому вывод в текстовом файле будет [«Привет», «что», «есть», «вы», «делать», «сегодня?»] [1 , 2,3,4,5,6]

Что мне нужно сделать, это взять этот файл, открыть его и прочитать, а затем напечатать исходное предложение, включая заглавные буквы и пунктуацию (это не будет как список).

Есть ли способ удалить квадратные скобки и запятые, но не запятые, которые содержатся в предложении, только запятые, которые разделяют слова как список.

Благодаря

+0

Это довольно важная концепция. Список - это не просто строка с дополнительными символами. Это совершенно другой способ хранения данных и записывается по-разному в памяти компьютеров. Чтобы соединить список строк, выполните '. '.join (list_of_strings)' –

+0

http://www.decalage.info/fr/python/print_list – Dadep

+0

Возможный дубликат [Как удалить запятые, кавычки и круглые скобки из экспортированный список python?] (http://stackoverflow.com/questions/23925711/how-do-imove-the-commas-quotes-and-parentheses-from-an-exported-python-list) –

ответ

0

Попробуйте:

file = "['Hello,', 'what', 'are', 'you', 'doing', 'today?'][1,2,3,4,5,6]" 

start = ''.join(file).find('[') + 1 
end = ''.join(file).find(']', start) 
new_string = ''.join(file)[start:end] 
original = new_string.rstrip("'").lstrip("'").replace("', '", " ") 

print(original) 

удачи.

Смежные вопросы