Pip3 Установить модуль для всех пользователей

Это означает, что наиболее переносимым способом определения реализации методов классов шаблонов является определение их внутри определения класса шаблона.

template < typename ... >
class MyClass
{

    int myMethod()
    {
       // Not just declaration. Add method implementation here
    }
};
1
задан Nevo 3 March 2019 в 20:17
поделиться

1 ответ

Я подозреваю, что ваши сценарии запуска запускают Python, отличный от того, к которому вы установили discord.

Попробуйте добавить строку,

import sys; print(sys.executable, sys.prefix)

к вашему main.py, перед import discord. А также попробуйте запустить это в вашей python3 оболочке. Это должно распечатать, где установлен исполняемый файл Python и стандартная библиотека, соответственно. Если в main.py они отличаются от оболочки, то это ваша проблема.

Также попробуйте

$ which python3
$ which pip3

Как только вы узнаете путь к исполняемому файлу Python, который вы на самом деле запускаете, вы можете использовать этот пункт Python с

$ foo -m pip install discord

, где foo - полный путь к исполняемому файлу Python, который вы распечатали с помощью sys.executable в вашем main.py.


Вы также можете попробовать установить discord в виртуальную среду.

$ python3 -m venv foo
$ source foo/bin/activate
$ pip install discord  # install all your other requirements too

где foo - это путь, по которому вы можете установить виртуальную среду. Затем в вашем скрипте запуска активируйте источник перед запуском main.py. Это гарантирует, что python будет работать в той же среде foo, которую вы только что создали.

#!/bin/bash
source foo/bin/activate
python /home/ubuntu/discordBot/main.py

Обратите внимание, что в активной виртуальной среде вы используете python и pip, даже если вы создали среду с python3.

0
ответ дан gilch 3 March 2019 в 20:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: