2017-06-28 1 views
-1

私はcoroutine.pyの最初の行に「#!usr/bin/env python」を置くが、私は「./test.py」によって直接coroutine.pyを実行しようとすると、私はこれを取得:Pythonについて "#!usr/bin/env python"?

zsh: ./coroutine.py: bad interpreter: usr/bin/env: no such file or directory

ことが私の中に間違ったものですzshrc?

+2

あなたはスラッシュを逃しました。 –

+0

一般的に、これはまったく使用しないでください。あなたのスクリプトをインストールする人やそうでなければあなたのスクリプトを使う人は、必要なバージョンのPythonがどこに格納されているかを知っている唯一の人です。 'distutils'は、理由のために'#!python'をインストール時に正しいパスに置き換えます。 – chepner

答えて

4

あなたは先頭のスラッシュ逃したので:#!/usr/bin/env pythonをし、それがhashbangと呼ばれています(@cdarkeはコメントで説明したようにしていないシェバングのウィッヒが唯一#!一部である)

More about shebang/hashbang

+1

'#! 'はシバン(shbang)と呼ばれ、'#'文字は音楽のシャープな文字に似ているためです。アメリカ以外では '# 'が「ハッシュ」として知られているので、これはしばしば「ハッシュ・バン」と呼ばれます。 – cdarke

+0

@cdarkeありがとうございます。 – Arount

関連する問題