Joseff Lewis
Joseff Lewis

Reputation: 1

Syntax Error which I can't seem to solve

I'm making a Network sniffing tool for personal use, and I can't find the syntax error within my code, this is Python 2.7.9 by the way.

Here's the code;

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

It says the error is featured below in the next 3 lines, any ideas?

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()

I feel there's been a mix up between Python 2 and 3 but I'm not sure.

Upvotes: 0

Views: 103

Answers (2)

Anthony Pham
Anthony Pham

Reputation: 3106

First, this is not valid in programs: ¬. This is Unicode, which basically doesn't work where you placed it all.. Since when does Python allow Unicode as commands in programs? It is not valid and in the wrong place. Now doing this will work:

print "¬"

It's a string so nothing wrong but the usage in your program makes that a Syntax error as there is no such command called ¬. Also, in the try statement, you have an indention of 8 spaces. You can only use 4 or 2-space indention in your programs.

EDIT: Okay, you can use 8-space indention in programs but you need to use 8 (or a multiple of 8) spaces every single line you need to indent. Since your indention is non-consistent, that could also be the reason you are getting an error.

Upvotes: 0

Ghostali
Ghostali

Reputation: 73

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

"¬" This is not valid Python syntax. Removing it should solve the issue.

Also in the future maybe post the actual error which is being shown in the output.

Upvotes: 1

Related Questions