Python попробуйте, кроме еще недопустимого синтаксиса?

#if-statement #syntax #try-catch #except

#if-statement #синтаксис #попробуйте-поймать #кроме

Вопрос:

Итак, я пытаюсь настроить небольшой скрипт в IDLE Python. Проверка синтаксиса в режиме ожидания сообщает мне, что в этом коде есть синтаксическая ошибка:

 from ftplib import FTP
import os
def ftpconnect(address, username, password):
    ftp_connection = 0
    ftp = FTP(address)
    try:
        ftp.login(username, password)
        print(ftp.getwelcome())
        if ftp.getwelcome() == '220 FTP Connected!':
            return 1
    else:
        return 0
print(ftpconnect('10.10.10.xxx', 'xxx', 'xxx'))
  

Синтаксическая ошибка возникает везде, где я пытаюсь выйти из инструкции «try», здесь это строка «else:». Я огляделся, и кажется, что у меня правильный синтаксис … есть мысли?

Спасибо! Я использую Python 2, а не 3.

Комментарии:

1. Наконец-то разобрался, см. Ответ…

2. что именно вы пытаетесь сделать с try/else ? else теперь имеет смысл (и недействителен), если ему не предшествует except .

3. Глядя на это годы спустя, вы абсолютно правы! Я полностью пропустил там except заявление, которое должно было быть моим первым шагом.

Ответ №1:

В дополнение к проблеме с моим синтаксисом (полностью отсутствует оператор except), мой оператор ftp attempt находился за пределами try блока. Поскольку я не «пробовал» это, это все равно не удалось.