马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
目录
1编译安装
前期准备
安装Python 3.7
配置环境变量
配置共享库文件
测试python3
测试 pip3
配置 pip3 使用国内源
配置使用国内源安装第三方模块
重新测试:编译安装python3.7 和pip 均安装成功
2.担心不好卸载 使用Anaconda同时安装运行多个不同版本的python环境
验证Anaconda是否配置精确
创建和管理Python环境
1.创建一个新的Python测试环境:
2.创建一个生产环境 :实际可用的Python3环境:
激活假造环境:
现在你已经成功激活了py3 假造环境,你可以在这个环境中安装和运行Python3步调。
使用conda list查察当前环境中已安装的包。
[root@slave2 ~]# python3 --version Python 3.8.8[root@slave2 ~]#
3.如果conda命令找不到 ,conda无法使用
汉化Python
检查Python安装
安装pip 和常用插件
验证安装
Python 特点扩展举例
为什么举例?
1编译安装
注意: 体系上已有 python2.7 使用以下 卸载, 不卸载也行 编译安装 注意 要 验证时使用 python3 -version
yum -y remove $(rpm -qa |grep python ) 前期准备
更新体系软件包列表:更新体系软件包此步骤可不做:若编译安装失败后把包删干净再实行此步骤,
- <strong>Copysudo yum update
- </strong>
复制代码 安装必要的依赖此步骤在编译安装必做:
- <strong>Copyyum install -y gcc openssl-devel bzip2-devel libffi-devel zlib-devel gcc-c++
- </strong>
复制代码 安装Python 3.7
下载Python 3.7源码包:
- <strong>Copywget https://www.python.org/ftp/python/3.7.12/Python-3.7.12.tgz /usr/local/
- </strong>
复制代码 cd /usr/local/
ls
解压源码包并进入目录:
- <strong>Copy 两个命令tar xzf Python-3.7.12.tgz
- cd Python-3.7.12
- 编译和安装Python 3.7:</strong>
复制代码- <strong>Copy 这是三个命令./configure --enable-optimizations <strong><strong>--enable-shared --prefix=/usr/local/python3</strong></strong></strong>
复制代码 - <strong>--enable-optimizations 启用优化
- <strong><strong>--enable-shared 指定安装共享库,共享库在使用其他需调用python的软件时会用到,比如使用mod_wgsi 连接Apache与python时需要。
- --prefix --前缀</strong></strong></strong>
复制代码- <strong># make -j 2指定2核cpu执行编译过程,会提高编译速度
- make -j 2 && make install #编译并安装,时间比较慢,预计30分钟
- </strong>
复制代码
Processing /tmp/tmpc18vljnr/pip-20.1.1-py2.py3-none-any.whl
Installing collected packages: setuptools, pip
WARNING: The script easy_install-3.7 is installed in '/usr/local/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The scripts pip3 and pip3.7 are installed in '/usr/local/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-20.1.1 setuptools-47.1.0
[root@root Python-3.7.12]#
根据提示 :
警告:脚本easy_install-3.7安装在PATH上不存在的/usr/local/python3/bin中。
考虑将此目录添加到PATH中,大概,如果您渴望制止此警告,请使用--no-warn-script-location。
警告:脚本 pip3和pip3.7安装在PATH上不存在的/usr/local/python3/bin中。
考虑将此目录添加到PATH中,大概,如果您渴望制止此警告,请使用--no-warn-script-location。
配置环境变量
根据提示 ,配置环境变量,把/usr/local/python3/bin:/usr/local/python3/bin 添加进/etc/profile内里。
[root@slave2 opt]# vim /etc/profile
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/git/bin:/usr/local/python3/bin:/usr/local/python3/bin
export JAVA_HOME="/usr/local/src/java/jdk1.8.0_141"
export PATH="$PATH JAVA_HOME/bin"
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=. {JAVA_HOME}/lib {JRE_HOME}/lib
#/usr/local/python3/bin:/usr/local/python3/bin 是我们手动添加的 配置环境变量
[root@root Python-3.7.12]# source /etc/profile
配置共享库文件
- <strong>cd /usr/local/python3/bin/
- ./python3
- ./python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory 有此报错</strong>
复制代码 为所有效户设置共享库目录
用 vim 编辑器打开配置文件 /etc/profile.d/python3.sh
- <strong> vim /etc/profile.d/python3.sh</strong>
复制代码 在文件末尾写上如下内容:
- <strong> # python3.6 共享库目录
- export PATH=$PATH:/usr/local/python3/bin</strong>
复制代码 编辑文件 /etc/ld.so.conf.d/python3.conf,而且添加如下内容:
- <strong> # vim /etc/ld.so.conf.d/python3.conf
- /usr/local/python3/lib</strong>
复制代码 保存退出文件后, 实行如下命令 加载配置信息使其生效
- <strong>[root@root bin]# python3</strong>
复制代码 ldconfig 后,体系会重新扫描 /etc/ld.so.conf 和 /etc/ld.so.conf.d/ 目录下的所有文件,并更新动态链接器的缓存。如许,新添加的库路径就会被体系辨认,您安装的Python模块或库就可以被精确加载了
实行如下命令,使环境变量生效
- <strong> source /etc/profile.d/python3.sh</strong>
复制代码 测试python3
- <strong>[root@root bin]# python3
- Python 3.7.12 (default, Aug 22 2024, 12:22:56)
- [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>>
- </strong>
- <strong>>>> print('qf') #注意 前面不能有空格 有空格报错
- File "<stdin>", line 1
- print('qf')
- ^
- IndentationError: unexpected indent
- >>> print('qf')
- qf
- >>>
- </strong>
复制代码 输入 exit() 即可退出 python3
测试 pip3
一般情况下你不需要实行下面的pip安装命令,安装python时会顺手安装。若 pip3 -V 不显示版本,那么需要实行下面的pip安装命令
- <strong>[root@root bin]# pip3 -V
- pip 20.1.1 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)
- [root@root bin]# </strong>
复制代码 如果上面显示的含有 python3.7就没问题了,阐明 pip3 安装的模块会安装到上面显示的目录
一般情况下你不需要实行下面的安装命令。
- <strong> pip3 install gnureadline</strong>
复制代码
配置 pip3 使用国内源
创建配置文件
- <strong># Linux下使用
- mkdir ~/.pip
- vi ~/.pip/pip.conf
-
- # Windows 下使用 pip.ini
- (1):在windows文件管理器中,输入 %APPDATA%
- (2):会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件</strong>
复制代码 写入如下内容:
- <strong>[global]
- timeout = 6000
- index-url=https://mirrors.aliyun.com/pypi/simple</strong>
复制代码
豆瓣源: https://pypi.douban.com/simple/
阿里源: https://mirrors.aliyun.com/pypi/simple
清华: https://pypi.tuna.tsinghua.edu.cn/simple
阿里云: http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学: http://pypi.hustunique.com/
山东理工大学: http://pypi.sdutlinux.org/
[root@root bin]# ldconfig
配置使用国内源安装第三方模块
示例: 好比安装一个实行远程主机命令的模块
- <strong> [root@python ~]# pip3 install gnureadline</strong>
-
复制代码 切换为阿里云之后,下载就会自动用阿里的pip源地点举行读取下载
卸载redis 软件:
[root@python-server bin]# pip3 uninstall redis
列出已安装:
[root@python-server bin]# pip3 list
查察已安装软件版本
[root@python-server bin]# pip3 freeze
导入到requirements.txt
[root@python-server bin]# pip3 freeze > requirements.txt
You are using pip version 9.0.3, however version 20.2.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
[root@python-server bin]# cat requirements.txt
gnureadline==8.0.0
redis==3.5.3
安装开发职员提供的软件(也就是步调运行所需要的基础环境)
[root@python-server bin]# pip3 install -r requirements.txt
小本领 列出可以使用pip安装的,所有 redis的版本
[root@python-server bin]# pip3 install redis==kkk
升级pip 不发起 ,软件不是越新越好
# pip3 install --upgrade pip
[root@mysql-server1 ~]# pip3 -V
重新测试:编译安装python3.7 和pip 均安装成功
[root@root bin]# python3
Python 3.7.12 (default, Aug 22 2024, 12:22:56)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
[root@root bin]# pip3 -V
pip 20.1.1 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)
[root@root bin]#
2.担心不好卸载 使用Anaconda同时安装运行多个不同版本的python环境
Anaconda是一个更大的数据科学平台,包罗了Conda包管理器以及很多常用的数据科学工具和库。Anaconda和Miniconda的区别在于Anaconda预先安装了一系列常用的数据科学工具和库,而Miniconda只包罗Conda和其基本依赖
[root@root ~]#
1.使用以下命令下载Anaconda安装脚本(请注意这里的下载链接可能会有更新,发起去Anaconda官网查察最新版本链接)
[root@slave2 ~]# cd /opt
wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh是544m 下载很慢请耐心等待
2. 给下载的脚本添加实行权限:
[root@slave2 opt]# ls
1.txt jack.txt test.sh
Anaconda3-2021.05-Linux-x86_64.sh my_git_project tom.sh
containerd mysql-gid-bak.sql tom.txt
chmod +x Anaconda3-2021.05-Linux-x86_64.sh
3.运行安装脚本
[root@slave2 opt]# ./Anaconda3-2021.05-Linux-x86_64.sh
Welcome to Anaconda3 2021.05
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>
# 按enter键,继续
4.安装完成后,需要激活Anaconda。根据提示选择是否将conda初始化加入到.bashrc文件,一般会选择yes。
>>
Please answer 'yes' or 'no':'
>>>
Please answer 'yes' or 'no':'
>>>
Please answer 'yes' or 'no':'
>>>
Please answer 'yes' or 'no':'
>>>
Please answer 'yes' or 'no':'
>>>
Please answer 'yes' or 'no':'
>>> yes
Anaconda3 will now be installed into this location:
/root/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/root/anaconda3] >>>
以上翻译如下:
按Enter确认位置:按下Enter键确认安装Anaconda3到/root/anaconda3
等待安装完成:安装步调会开始复制文件和安装Anaconda3到指定位置。请耐心等待安装完成,过程可能需要一些时间取决于体系性能和文件大小
等待一会出现如下: 输入 yes
Preparing transaction: done
Executing transaction: done
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>> yes
Do you wish the installer to initialize Anaconda3 的意思是 您渴望安装步调初始化 Anaconda3 吗?
安装完成后,你需要配置Anaconda3的环境变量,就是步骤5
以下是安装完成界面。
Thank you for installing Anaconda3!
===========================================================================
Working with Python and Jupyter notebooks is a breeze with PyCharm Pro,
designed to be used with Anaconda. Download now and have the best data
tools at your fingertips.
PyCharm Pro for Anaconda is available at: https://www.anaconda.com/pycharm
[root@slave2 opt]#
5.安装完成后,重新配置环境变量
~/.bashrc和/etc/profile是两个不同的文件,在Linux体系中具有不同的作用和范围,
vim ~/.bashrc 对当前用户的Shell生效
1.确认Anaconda的安装路径并配置环境变量
通常默安装路径是 :
/root/anaconda3
也可能是其他路径,如/home/username/anaconda3等。
可以用whereis anaconda3 查察一下
[root@slave2 opt]# vim /etc/profile # 对所有效户的Shell生效
在文件末尾添加以下行,确保替换实际的Anaconda安装路径:
export PATH="/root/anaconda3/bin PATH"
保存并关闭文件。
使新的环境变量设置生效:
[root@slave2 ~]#source /etc/profile
#注你在输入 大概粘贴代码 的时候/ # 和代码 不能有空格,否则会报错,如下
[root@slave2 ~]# source /etc/profile
-bash: /etc/profile : 没有谁人文件或目录
- [/code] [size=3][b]验证Anaconda是否配置精确[/b][/size]
- [list=1]
- [*][b]检查conda命令是否可用:[/b] [code]<strong>[root@slave2 ~]# conda --version
- conda 4.10.1</strong>
复制代码
创建和管理Python环境
当conda命令可用后,你可以继续创建和管理Python环境:
1.创建一个新的Python测试环境:
- <strong>[root@slave2 ~]#conda create --name myenv
- Collecting package metadata (current_repodata.json): done
- Solving environment: done
- ==> WARNING: A newer version of conda exists. <==
- current version: 4.10.1
- latest version: 24.7.1
- Please update conda by running
- $ conda update -n base -c defaults conda
- ## Package Plan ##
- environment location: /root/anaconda3/envs/myenv
- Proceed ([y]/n)?
- Preparing transaction: done
- Verifying transaction: done
- Executing transaction: done
- #
- # To activate this environment, use
- #
- # $ conda activate myenv
- #
- # To deactivate an active environment, use
- #
- # $ conda deactivate
- [root@slave2 ~]# </strong>
复制代码
- 激活环境:
- <strong>Copyconda activate myenv
- </strong>
复制代码 - [root@slave2 ~]# conda activate myenv
- <strong>CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
- To initialize your shell, run
- $ conda init <SHELL_NAME>
- Currently supported shells are:
- - bash
- - fish
- - tcsh
- - xonsh
- - zsh
- - powershell
- See 'conda init --help' for more information and options.
- IMPORTANT: You may need to close and restart your shell after running 'conda init'.
- </strong>
- [root@slave2 ~]#
复制代码 - 安装包,比方numpy:
- <strong>Copyconda install numpy
- </strong>
复制代码 - <strong>[root@slave2 ~]# conda install numpy
- Collecting package metadata (current_repodata.json): done
- Solving environment: done
- ==> WARNING: A newer version of conda exists. <==
- current version: 4.10.1
- latest version: 24.7.1
- Please update conda by running
- $ conda update -n base -c defaults conda
- # All requested packages already installed.
- [root@slave2 ~]# </strong>
复制代码 - 查察环境中已安装的包:
conda list
- 更新软件包: conda update 包名
- <strong>Copyconda update numpy -y
- </strong>
复制代码 更新指定软件包到最新版本。
6.退出当前环境:
- <strong>Copyconda deactivater</strong>
复制代码 退出当前环境,如果退出环境报错那么 ,如下
[root@slave2 ~]# conda deactivate
CommandNotFoundError: Your shell has not been properly configured to use 'conda deactivate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
根据提供的错误信息,使用 conda deactivate 命令时出现问题
错误提示中提到:
您的 shell 尚未精确配置以使用 ‘conda deactivate’ 命令
运行“conda init”后,您可能需要关闭并重新启动您的shell。
根据提示,运行以下命令来初始化shell:
conda init shell名称
conda init bash
运行完上述命令后,可能需要关闭并重新启动 shell,以使更改生效。然后,应该能够成功使用 ‘conda deactivate’ 命令
[root@slave2 ~]# conda init bash
no change /root/anaconda3/condabin/conda
no change /root/anaconda3/bin/conda
no change /root/anaconda3/bin/conda-env
no change /root/anaconda3/bin/activate
no change /root/anaconda3/bin/deactivate
no change /root/anaconda3/etc/profile.d/conda.sh
no change /root/anaconda3/etc/fish/conf.d/conda.fish
no change /root/anaconda3/shell/condabin/Conda.psm1
no change /root/anaconda3/shell/condabin/conda-hook.ps1
no change /root/anaconda3/lib/python3.8/site-packages/xontrib/conda.xsh
no change /root/anaconda3/etc/profile.d/conda.csh
no change /root/.bashrc
No action taken.
[root@slave2 ~]#
注意:如果使用的是不同的 shell(如 fish、tcsh、xonsh、zsh、powershell 等),则应使用相应的 shell 名称 来运行 ‘conda init’ 命令
退出当前环境, 返回到基础环境。
conda deactivate
7.删除环境:
- <strong>Copyconda remove --name myenv --all
- </strong>
复制代码 删除指定的环境及其所有包。
8.更新Conda: 可以不更新
- <strong>Copyconda update conda
- </strong>
复制代码 更新Conda自己到最新版本。
这些是使用Conda的基本操纵,资助你开始管理Python环境和软件包。
2.创建一个生产环境 :实际可用的Python3环境:
这将在Anaconda中创建一个名为 py3的Python3环境。
- 打开终端。
- 运行以下命令创建一个名为py3的Python3环境:
- Copyconda create --name py3 python=3
复制代码
激活假造环境:
- 运行以下命令激活一个叫做py3 的假造环境:
- 现在你已经成功激活了py3 假造环境,你可以在这个环境中安装和运行Python3步调。
- 验证环境:
- 可以运行python --version来验证Python版本是否为Python3。
- 使用conda list查察当前环境中已安装的包。
- 安装包,比方numpy:
- <strong>Copyconda install numpy
- </strong>
复制代码
- 更新软件包: conda update 包名
- <strong>Copyconda update numpy -y
- </strong>
复制代码 更新指定软件包到最新版本。
[root@slave2 ~]# python3 --version
Python 3.8.8
[root@slave2 ~]#
3.如果conda命令找不到 ,conda无法使用
如果在实行上述创建环境 步骤后,conda命令仍然未找到,请考虑以下几种可能性:
- Anaconda未精确安装:
- 实验重新安装Anaconda,并确保安装路径精确。
- 环境变量未精确设置:
- 确认路径配置精确,并确保已实行source ~/.bashrc使修改生效。
- 权限问题:
- 确认你在操纵过程中有足够的权限,尤其是路径和配置文件的修改。
汉化Python
- <strong>Copywget https://raw.githubusercontent.com/Python3WebSpider/Python3WebSpider/master/Python3.7%E6%B1%89%E5%8C%96%E8%A1%A5%E4%B8%81.patch
- </strong>
复制代码- <strong>Copysudo patch -p0 < Python3.7%E6%B1%89%E5%8C%96%E8%A1%A5%E4%B8%81.patch
- </strong>
复制代码 检查Python安装
- <strong>Copypython3 --version
- </strong>
复制代码
安装pip 和常用插件
- <strong>Copysudo yum install -y python3-pip
- </strong>
复制代码- <strong>Copysudo pip3 install requests beautifulsoup4 scrapy
- </strong>
复制代码 验证安装
- <strong>Copypip3 --version
- </strong>
复制代码- <strong>Copypip3 show requests
- pip3 show beautifulsoup4
- pip3 show scrapy</strong>
复制代码 Python 特点扩展举例
以下是对每个Python特点的扩展举例,资助你更好地理解Python的上风:
- 易于学习:
- 举例: 对于初学者,编写一个"Hello, World!"步调非常简朴,只需一行代码:
- Copyprint("Hello, World!")
复制代码 - 解释: 相较于其他编程语言,Python的语法非常简洁,减少了学习编程的难度。
- 易于阅读:
- 举例: Python使用缩进来表今世码块,进步了代码的可读性。
- Copydef greet(name):
- if name:
- print(f"Hello, {name}!")
- else:
- print("Hello, World!")
复制代码 - 解释: 清楚的代码布局使得阅读和理解步调更加容易。
- 易于维护:
- 举例: Python的代码维护相当容易,社区有大量的文档和最佳实践指南。
- Copy# Example of easy to maintain code
- def add(a, b):
- return a + b
复制代码 - 解释: 简朴和清楚的代码布局使得维护和扩展变得更加容易。
- 一个广泛的标准库:
- 举例: 使用Python标准库中的datetime模块操纵日期和时间。
- Copyimport datetime
- now = datetime.datetime.now()
- print(now)
复制代码 - 解释: 标准库提供了丰富的模块,减少了编写代码的工作量。
- 互动模式:
- 举例: 在Python终端中直接实行代码并查察结果:
- Copy>>> a = 5
- >>> b = 10
- >>> a + b
- 15
复制代码 - 解释: 互动模式支持即时反馈,得当测试和调试代码。
- 可移植:
- 举例: Python代码可以在不同平台上无缝运行,比方在Windows和Linux上运行雷同的脚本。
- Copyimport os
- print(os.name) # 输出当前操作系统的名称
复制代码 - 解释: Python的跨平台特性使得开发者可以编写一次代码,在多个平台上运行。
- 可扩展:
- 举例: 使用C扩展模块来优化关键性能部分。
- Copy// example.c
- #include <Python.h>
- static PyObject* my_function(PyObject* self, PyObject* args) {
- return Py_BuildValue("i", 42);
- }
- static PyMethodDef myMethods[] = {
- { "my_function", my_function, METH_VARARGS, "Returns 42." },
- { NULL, NULL, 0, NULL }
- };
- static struct PyModuleDef myModule = {
- PyModuleDef_HEAD_INIT, "myModule", NULL, -1, myMethods
- };
- PyMODINIT_FUNC PyInit_myModule(void) {
- return PyModule_Create(&myModule);
- }
复制代码- Copy# 使用C扩展模块的Python代码
- import myModule
- print(myModule.my_function()) # 输出42
复制代码 - 解释: 通过C/C++扩展,Python可以实现高性能盘算。
- 数据库:
- 举例: 使用Python的sqlite3模块连接和操纵SQLite数据库。
- Copyimport sqlite3
- conn = sqlite3.connect('example.db')
- c = conn.cursor()
- c.execute('''CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)''')
- c.execute("INSERT INTO users (name) VALUES ('Alice')")
- conn.commit()
- conn.close()
复制代码 - 解释: Python提供了对各种数据库的支持,使得数据库操纵变得简朴。
- GUI编程:
- 举例: 使用tkinter模块创建一个简朴的GUI应用。
- Copyimport tkinter as tk
- root = tk.Tk()
- label = tk.Label(root, text="Hello, GUI!")
- label.pack()
- root.mainloop()
复制代码 - 解释: Python支持多种GUI库,可以创建跨平台的图形用户界面应用。
- 可嵌入:
- 举例: 在C步调中嵌入Python解释器。
- Copy#include <Python.h>
- int main(int argc, char *argv[]) {
- Py_Initialize();
- PyRun_SimpleString("print('Hello from embedded Python!')");
- Py_Finalize();
- return 0;
- }
复制代码 - 解释: 可以将Python嵌入到其他语言的应用步调中,为应用步调增加脚本支持。
为什么举例?
这些举例展阐明Python在不同领域中的应用及其上风,进一步阐明了Python是一个功能强大且机动的编程语言
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |