さて、python3 をデフォルトに設定する方法について Google で簡単に検索してみました。次のコードを見つけました:
echo "alias python='python3'" >> .bashrc
source .bashrc
ターミナルに入力しましたが、思ったように動作しなかったので、間違いがないか再度確認しました>>
。意味がよくわかりませんでした(今でもわかりません)。1、2回、次のようにしたと思います。
.bashrc source .bashrc
今ターミナルを起動すると、次のように表示されます:
-bash: alias: source: not found
-bash alias: .bashrc: not found
-bash: alias: source: not found
-bash alias: .bashrc: not found
my@my-hp:~$
全部めちゃくちゃになってしまいました。これを修正して、自分がやったことを消す方法がわかりません。
幸いなことに、ターミナルに「python」と入力すると python3 が実行されますが、ディレクトリを適切なフォルダーに変更した後、ターミナルに入力しても py ファイルを実行できません。
ご協力いただければ幸いです
答え1
>>
前のコマンドの出力を次のファイルに追加する手段。
ただし、実行すべきだったのは
echo "alias python='python3'" >> .bashrc ; source .bashrc
を省略したため;
、実行される代わりにソース コマンドが に追加されました.bashrc
。これを編集して、それらのソース コマンドをすべて削除する必要があります。
alias コマンドを bashrc に追加すると、アカウント内で永続的になりますが、次回シェルを開いたときにのみ有効になります。.bashrc で source を実行すると、そのファイルの内容が再実行され、ファイル内のエイリアスが現在のシェルに追加されます。最初に alias コマンドを作成するときに、bashrc を source するのではなく、カット アンド ペーストを使用して直接実行することをお勧めします。(ただし、どちらの方法でも機能します。)
.py ファイルを直接実行したい場合は、 を#!/usr/bin/env python3
.py ファイルの最初の行に追加し、 を使用して実行可能にする必要がありますchmod +x
。
答え2
これでエラーが解消されるかどうかはわかりませんが、エラーから回復したら、このupdate-alternatives
ユーティリティの使用を検討してください。このユーティリティは、同じプログラムの複数のバージョンがインストールされている状況向けに作られています。デフォルトの Python を 2.X から 3.Y に変更する手順は次のとおりです。
システムのベースライン(これは私のシステム):
$ python --version
Python 2.7.16
$ python3 --version
Python 3.7.3
python
コマンドをデフォルトで使用するにはpython3
:
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
応答は次のようになります。
update-alternatives: /usr/bin/python3 を使用して、/usr/bin/python (python) を自動モードで提供します。
ベースラインを再度確認します。
$ python --version
Python 3.7.3
$ python3 --version
Python 3.7.3
詳細については、こちらをご覧くださいman update-alternatives
。これを「元に戻す」場合は、次の操作を行います。
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 10
次のような応答が返されるはずです:
update-alternatives: /usr/bin/python2.7 を使用して、/usr/bin/python (python) を自動モードで提供します。