2016-01-18 2 views
0

Я создаю инструмент сетевого обнюхивания для личного использования, и я не могу найти синтаксическую ошибку в своем коде, это, кстати, Python 2.7.9.Синтаксис Ошибка, которую я не могу решить

Вот код;

def main(): 
    global listen 
    global port 
    global command 
    global execute 
    global upload_destination 
    global target 

    if not len(sys.argv[1:]): 
     usage() 
    #read the commandline options 

В нем говорится, что ошибка приведена ниже в следующих трех строках, любые идеи?

try: 
     opts, args = getopt.getopt(sys.argv[1:],"hle:t:p:cu:", ¬ ["help","listen","execute","target","port","command","upload"]) 
except getopt.GetoptError as err: 
    print str(err) 
    usage() 

Я чувствую, что между Python 2 и 3 было замешано, но я не уверен.

+0

Неверный отступ? –

+7

'..." hle: t: p: cu: ", ¬ [" help "," listen ... '<--- Что это' '¬'? –

+4

Кроме того, пожалуйста, вставьте полный Traceback. –

ответ

0

Во-первых, это недопустимо в программах: ¬. Это Unicode, который в основном не работает там, где вы его разместили. С каких пор Python разрешает Unicode как команды в программах? Это неверно и не в том месте. Теперь делать это будет работать:

print "¬" 

Это строка, поэтому ничего плохого, но использование в вашей программе не делает, что ошибка синтаксиса, поскольку нет такой команды называется ¬. Кроме того, в заявлении try у вас есть отступ 8 пробелов. Вы можете использовать только 4 или 2 пробела в своих программах.

EDIT: Хорошо, вы можете использовать 8-пространственный отступ в программах, но вам нужно использовать 8 (или несколько из 8) пробелов для каждой отдельной строки, необходимой для отступов. Поскольку ваше отступление является несогласованным, это может быть причиной того, что вы получаете ошибку.

+0

Вы можете использовать любой отступ до тех пор, пока вы согласны. –

+0

А это будет иметь больший смысл, спасибо за помощь :) –

+0

Вы можете нажать зеленую галочку, если вы согласны это лучший ответ, и он решает вашу проблему ... –

1

¬ ["help","listen","execute","target","port","command","upload"])

"¬" Это не является допустимым синтаксисом Python. Удаление этой проблемы должно решить проблему.

Также в будущем возможно опубликовать фактическую ошибку, которая отображается на выходе.

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