python - Shebang doesn't work with python3 -


i have following program:

#!/usr/local/bin/python3  print("hello") 

via terminal test.py , get:

traceback (most recent call last):   file "/usr/lib/python3.3/site.py", line 629, in <module>     main()   file "/usr/lib/python3.3/site.py", line 614, in main     known_paths = addusersitepackages(known_paths)   file "/usr/lib/python3.3/site.py", line 284, in addusersitepackages     user_site = getusersitepackages()   file "/usr/lib/python3.3/site.py", line 260, in getusersitepackages     user_base = getuserbase() # set user_base   file "/usr/lib/python3.3/site.py", line 250, in getuserbase     user_base = get_config_var('userbase')   file "/usr/lib/python3.3/sysconfig.py", line 610, in get_config_var     return get_config_vars().get(name)   file "/usr/lib/python3.3/sysconfig.py", line 560, in get_config_vars     _init_posix(_config_vars)   file "/usr/lib/python3.3/sysconfig.py", line 432, in _init_posix     _sysconfigdata import build_time_vars   file "/usr/lib/python3.3/_sysconfigdata.py", line 6, in <module>     _sysconfigdata_m import * importerror: no module named '_sysconfigdata_m' 

instead if type python3 test.py works, get:

hello

p.s. which python3 ----> /usr/local/bin/python3

generally, take care of pitfalls:

  1. set executable flag on script: chmod u+x test.py
  2. try execute preceding dot "./", call ./test.py otherwise might execute other script within path
  3. also make sure you don't have windows line endings, seems prevent shebang evaluation, too. there suggestions around, e.g. in answer, on how convert format
  4. #!/usr/bin/env python3 best way define shebang, since python binary may installed somewhere else. env inspect path environment find binary

edit: above kind of error looks windows line endings me. i've had them, too, different output though


Comments

Popular posts from this blog

c# - How to get the current UAC mode -

postgresql - Lazarus + Postgres: incomplete startup packet -

angularjs - ng-repeat duplicating items after page reload -