Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 16, 2021 15:15:21

Galactus111
Зарегистрирован: 2021-02-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

Всем доброго дня.
Столкнулся вот с такой вот ошибкой, комрады помогите разобраться в чем тут дело.
Google четкого ответа не дал, я новенький это понятное дело, но меня эта ошибка очень озадачила.

 def displayBoard(missedLetters, correctLetters, secretWord):
    print(HANGMAN_PICS[len(misssedLetters)])
    print()
    print('Missed Letters:', end=' ')
    for letter in missedLetters:
        print(letter, end=' ')
    print()
В строчке for letter in missedLetters:
missedLetters подчеркивает красным, файл с ошибкой есть во вложении.

Отредактировано Galactus111 (Фев. 16, 2021 15:18:18)

Прикреплённый файлы:
attachment Снимок экрана 2021-02-16 в 15.11.07.png (19,5 KБ)

Офлайн

#2 Фев. 16, 2021 15:50:06

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1395
Репутация: +  124  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

Galactus111
missedLetters подчеркивает красным, файл с ошибкой есть во вложении.
это не о чем не говорит отправляйте свой код полностью,только правильно его оформляйте в сообщении,в
редакторе сообщений рядом со смайлом есть тег Python,

Офлайн

#3 Фев. 16, 2021 16:14:57

Galactus111
Зарегистрирован: 2021-02-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

 import random
HANGMAN_PICS = ['''
   +---+
       |
       |
       |
      ===''', '''
   +---+ 
       |
       |
       |
      ===''', '''
   +---+
   0   |
   |   |
       |
      ===''', '''
   +---+
   0   |
  /|   |
       |
      ===''', '''
   +---+
   0   |
  /|\  |
       |
      ===''', '''
    +---+
    0   |
   /|\  |
   /    |
      ===''', '''
   +---+
   0   |
  /|\  |
  / \  |
      ===''']
words = '''ant baboon badger bat bear beaver camel cat clam cobra cougar
       coyote crow deer dog donkey duck eagle ferret fox frog goat goose hawk
       lion lizard llama mole monkey moose mouse mule newt otter owl panda
       parrot pigeon python rabbit ram rat raven rhino salmon seal shark sheep
       skunk sloth snake spider stork swan tiger toad trout turkey turtle
       weasel whale wolf wombat zebra'''.split()'
def getRandomWord(wordList):
    # This function returns a random string from the passed list of strings.
    wordIndex = random.randint(0, len(wordLIst) - 1)
    return wordList(wordIndex)
def displayBoard(missedLetters, correctLetters, secretWord):
    print(HANGMAN_PICS[len(misssedLetters)])
    print()
    print('Missed Letters:', end=' ')
    for letter in missedLetters:
        print(letter, end=' ')
    print()
    blanks = '_' * len secretWord)
    for i in range(len(secretWord)): #Replace blanks with correctly
      guesses letters.
        if secretWord[i] in correctLetters:
            blanks = blanks[i] + secretWord[i] + blanks[i+1:]
    for letter in blanks: # Show the secret word with correctly
      guesed letters.
        if secretword[i] in correctLetters:
            blanks = blanks[i] + secretWord[i] + blanks[i+1:]
    for letters in blanks: # Show the secret word with spaces in between each letter.
        print(letter, end=' ')
    print()
def getGuess(alresdyGuessed):
    # Returns the letter the player entered. This function makes sure the player entered a single letter and not something else.
    while True:
        print('Guess a letter.')
        guess = input()
        guess = guess.lower()
        if len(guess) != 1:
            print('Please enter a single letter.')
       elif guess in alreadyGuessed:
            print('you have already guessed that letter, choose again.')
        elif guess not in 'abcdefghijklmnopqrstuvwxyz':
            print('Please enter a LETTER.')
        else:
            return guess
def playAgain*():
    # This function returns True if the player wants to play again; otherwise, it returns False.
    print('Do you want to play again? (yes or no)')
    return input().lower().startswitch('y')
print('H A N G M A N')
missedLetters = ''
correctLetters = ''
secretword = getRandomWord(words)
gameisdone = False
while True:
    displayBoard(missedLetters, correctLetters, secretWord)
    #Let the player enter a letter.
    guess = getGuess(missedLetters + correctLetters)
    if guess in secretWord:
        correctLetters = correctLetters + guess
        #Check if the player has won.
        foundAllLettres = True
        for i in range(len(secretword)):
            if secretword[i] not in correctLetters:
                foundAllLetters = False
                break
            if foundAlllLetters:
                 print('Yes! the secret word is "' + secretWord +
                  '"! You have won!')
                gameIsDone = True
       else:
           missedLetters = missedLetters + guess
           #Check if player has guessed too many times and lost.
           if len(missedLetters) == len(HANGMAN_PICS) - 1:
               displayBoard(missedLetters, correctLetters, secretword)
               print('You have run out of guesses!\nAfter ' +
                 str(len(missedLetters)) + ' missed guesses and ' +
                 str(len(correctLetters)) + ' correct guesses,
                 the word was "' + secretWord +'"')
               gameIsDone = True
        # Ask the player if they want to play again (but only if the game is done.
        if gameIsDone:
            if playAgain():
                missedLatters = ''
                correctLetters = ''
                gameIsDone = False
                SecretWord = getRandomWord(words)
           else:
               break
                   
                     
                            
                         
    
                     
         
            
            

Отредактировано Galactus111 (Фев. 16, 2021 16:42:02)

Офлайн

#4 Фев. 16, 2021 23:26:28

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

Управляющие конструкции должны кончаться двоеточием



Офлайн

#5 Фев. 17, 2021 12:24:16

Galactus111
Зарегистрирован: 2021-02-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

doza_and
Я знаю, ставил, всё равно та же ошибка(

Отредактировано Galactus111 (Фев. 17, 2021 12:30:05)

Офлайн

#6 Фев. 17, 2021 12:55:17

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

Galactus111
Ошибка, это когда вы выполняете код и получаете исключение. То что вам какая-то программа подсвечивает красным какие-то слова - не значит ничего, выкиньте свою программу на ту помойку на которой вы её нашли и не морочьте людям голову. Могу предположить, что вам подсвечивают нарушение правил PEP-8. Это никакая не ошибка. С чего вы решили интерпретировать подсказки от ИДЕ как ошибки? Ваша программа работает? Если работает - успокойтесь, ошибок нет. Если не работает, то покажите сообщение, которое вам выведет интерпретатор.



Офлайн

#7 Фев. 17, 2021 15:23:44

Galactus111
Зарегистрирован: 2021-02-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

FishHook
Я обсолютно никому не морочу голову, я ко всем отношусь с уважением, я просто не могу понять в чём проблема.
это всё с учебника.
Ситуация такая, я нажимаю ‘run module’ и мне выдаёт вот что ‘EOL while scanning string literal’
и программа не работает, лишь подсвечивает данную строку, а интерпретатор стоит родной.
По поводу pep-8 я тоже так думаю, только вот я дня 2 уже ищу в какой строке что-то не так.

Отредактировано Galactus111 (Фев. 17, 2021 17:03:48)

Офлайн

#8 Фев. 17, 2021 15:43:11

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

Galactus111
Ситуация такая, я нажимаю ‘run module’
Запустите свою программу как положено - через эмулятор терминала вашей операционной системы. В стеке знаний относящихся к пииону нет никаких ‘run module’. Вы используете для своих экспериментов какую-то убогую программу, что это за программа вы не сказали. Просто вы где-то что-то нажимаете. Блин, не используйте эту программу. Пишите свой код в любом текстовом редакторе на выбор, в Блокноте например и запускайте программы из коммандной строки. С этого, давайте и начнем, вернее продолжим. Я спросил, ваша программа работает или нет (не нажимая run module, а выполняя программу)?



Офлайн

#9 Фев. 17, 2021 17:37:15

Galactus111
Зарегистрирован: 2021-02-16
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

FishHook
FishHook
ваша программа работает или нет (не нажимая run module, а выполняя программу)?
Запустил через командную строку вот что в итоге вышло.

И вроде он мне показал в чем тут проблема.
Благодарю тебя за уделенное время + тебе поставил и еще поставлю
И спасибо всем установил PyCharm и жизнь заиграла красками.

Отредактировано Galactus111 (Фев. 17, 2021 18:08:09)

Офлайн

#10 Фев. 20, 2021 13:13:25

rumactep
Зарегистрирован: 2021-02-11
Сообщения: 14
Репутация: +  1  -
Профиль   Отправить e-mail  

EOL while scanning string literal ошибка

missedLetters (2 s) и misssedLetters (3s) это разные идентификаторы

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version