2013-04-02 2 views
1

Я работаю над простой игрой на питоне, в которой игрок пытается угадать буквы, содержащиеся в слове. Проблема в том, что когда я печатаю слово, оно печатает \ n в конце.удаление строк в python?

Из моего первоначального исследования, я думаю, мне нужно использовать r.string(), чтобы удалить его. Однако я не уверен, куда он пойдет.

Извините за новый вопрос.

import random 
with open('wordlist.txt') as wordList: 
    secretWord = random.sample(list(wordList), 1) 

print (secretWord) 

ответ

3

Другие ответы являются лучше, на мой взгляд, но вы также можете использовать:

secretWord = secretWord.replace('\n', '')) 

EDIT: OP заявил secretWord это список, а не строка.

В случае списка строк, используйте:

secretWord = [each.replace('\n', '') for each in secretWord] 
+0

hmm, получение ошибки-- AttributeError: объект 'list' не имеет атрибута 'replace' – jamyn

+0

Отредактировано мое исходное сообщение для использования списков. –

+0

отлично работает, спасибо! – jamyn

6

Вы можете использовать .strip() раздеть пропуски:

secret_word = random.choice(wordList).strip() 
+0

спасибо, но я получаю error-- TypeError: объект типа '_io.TextIOWrapper' не имеет LEN () – jamyn

+0

@JohnJamin 'random.sample (wordList.readlines(), 1) .strip()' –

+0

хмм, получая различные error-- AttributeError: 'список' объект не имеет атрибута 'стрип' – jamyn

0
text = open("your file","r").read().replace('\n','') 
x = set(text.split(" "))