1. Python解释器安装

访问官方网站:https://www.python.org/, 在首页标签中找到“Downloads”,根据不同的操作系统,选择相应的下载源文件即可。

2. 源码安装

在Linux、MacOS平台,我推荐大家采用源码的方式来安装,以Python3.6.5版本在CentOS7.0+64bit系统上的安装为例:

$ tar zxf Python-3.6.5.tar.xz

$ cd Python-3.6.5/

$ ./configure --prefix=/opt/inst/ --enable-shared --enable-optimizations

  • 推荐大家打开--enable-shared,这个选项用于控制生成python的动态库文件
  • 在 configure 完之后,会提示打开一个开关, --enable-optimizations 主要是性能方面的优化,在生产环境,大家可以把这个选项打开。

$ make -j16 (如果你电脑有16CPU,建议设置最高的并行编译速度)

  • 这个操作完成之后,会提示有那些功能没有编译进去,这个时候大家需要安装这些功能对应依赖的软件包,比如sqlite3,则需要安装sqlite3-devel,ssh功能需要安装openssl-devel,多数包是可能完全根据提示找到对应的软件包的,同样因为我的虚拟机尚未准备好,暂时无法提供完成的包列表。
  • 更新依赖包列表:readline-devel, sqlite-devel, tk-devel, openssl-devel, bzip2-devel

$ make -j16 install

==> 安装完成

此时还是无法启动python程序的,我们需要更新ldconfig程序

$ cat > /etc/ld.conf.d/python-3.6.5-x86_64.conf

/opt/inst/lib/

$ ldconfig

install,更新etc下的文件,执行ldconfig命令是需要root用户权限的。

验证是否完成成功:

$ /opt/inst/bin/python3

>>> print("Hello World!")

3. 牵涉的几个文件

  • .py文件:存放Python代码的文件
  • __pycache__目录:存放Python编译后字节码文件(.pyc, .pyo)文件的目录
  • .pyc文件:Python字节码文件
  • .pyo文件:Python以优化方式编译得到的字节码文件

4. 执行方式

  • 交互模式运行:直接执行python3命令,进入交互模式
  • 命令行模式运行:python -c "print('hello world!'“)可以执行单行命令
  • 文件模式运行:python hello.py
  • 文件直接执行模式:./hello.py
    • Windows: 在文件开头加上:#!C:\Python3\python3.exe
    • Linux: 在文件开头加上:#!/opt/inst/bin/python3,并授予文件执行权限chmod a+x hello.py

5. 最佳交互式

Python具有丰富的第三方软件包,其中"ipython"是我认为最优秀的用于交互模式的一个软件包,这个软件包安装后,能够使得Python交互式下具有函数、变量自动提示功能

请访问:https://pypi.org,搜索ipython下载安装到/opt/inst/路径中

下载依赖的ipython包,如果可以联网,则直接通过pip3 install ipython方式安装,不能联网则需要下载依赖的包:

decorator, ipython, ipython_genutils, jedi, parso, pexpect, pickleshare, prompt_toolkit, ptyprocess, Pygments, setuptools, pip, simplegeneric(这个包提供的是zip格式,需要先安装),six, traitlets, wcwidth, wheel, 其他包下载whl格式,然后通过pip3 install *.whl(*.whl方式能够在多个包直接自动查找依赖,动态安装)

今天有点晚,就先介绍这么多,下次将介绍python比较通用的IDE软件。

[TimLinux] Python如何运行程序的更多相关文章

  1. 第二章 python如何运行程序

    一.python解释器介绍 Python解释器是一种让程序运行起来的程序.实际上,解释器是代码与机器的计算机硬件之间的软件逻辑层.当Python包安装在机器上后,它包含了一些最小化的组件:一个解释器和 ...

  2. Python如何运行程序

    人生苦短,我用Python. 作为一个开发人员,如何写代码是必须要知道的,代码如何运行也是有必要了解的.通过了解代码如何运行,可指导我们写出效率更高的代码.下午看了<Python学习手册> ...

  3. 《Python学习手册 第五版》 -第2章 Python如何运行程序

    第二章主要讲解了Python的运行机制, 在开始之前,需要明确以下几点 因为<Python学习手册>这本书是面向市场很多人的,既然有很多人,就有很多不一样的需求和使用情况,这本书涵盖Pyt ...

  4. 在Python解释器运行程序

    在解释器中运行  ***.py文件的方法:使用import添加模块 ***.py,然后调用 ***.py中的函数 例:在zoo.py中定义hours函数 运行方法: >>> impo ...

  5. VSCode的Python扩展下程序运行的几种方式与环境变量管理

    在VSCode中编写Python程序时,由于有些地方要使用环境变量,但是发现设置的环境变量有时不起作用,花了点时间研究了一下,过程不表,直接说结论. 首先,环境变量的设置,Python扩展中有三种方式 ...

  6. day2 编程语言介绍、Python运行程序的两种方式、变量

    一 编程语言介绍 1. 机器语言 用计算机能理解的二进制指令直接编写程序,直接控制硬件 2. 汇编语言 用英文标签取代二进制指令编写程序,本质也是直接控制硬件 3. 高级语言 用人能理解的表达方式去编 ...

  7. python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统

    python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统 引子 python是什么? 什么是编程语言?为何要有编程语言? 什么是编程?什么是程序?什么是进程?为何要编程? 计算机基础 ...

  8. Python Virtualenv运行Django环境配置

    系统: RHEL6.5 版本说明: Python-3.5.0 Django-1.10.4 virtualenv:为每个项目建立不同的/独立的Python环境,你将为每个项目安装所有需要的软件包到它们各 ...

  9. 简明python教程 --C++程序员的视角(一):数值类型、字符串、运算符和控制流

    最初的步骤 Python是大小写敏感的 任何在#符号右面的内容都是注释 >>> help('print')在“print”上使用引号,那样Python就可以理解我是希望获取关于“pr ...

随机推荐

  1. 关于Pycharm的注册码

    最近安装pycharm,需要注册码,我在网上搜索了许多,这里一一记录下来,供大家参考: 在License server里面尝试输入下面任一地址:  http://elporfirio.com:1017 ...

  2. PHP 将数据从 Laravel 传送到 vue 的四种方式

    在过去的两三年里,我一直在研究同时使用 Vue 和 Laravel 的项目,在每个项目开发的开始阶段,我必须问自己 “我将如何将数据从 Laravel 传递到 Vue ?”.这适用于 Vue 前端组件 ...

  3. 利用SSH隧道技术穿越内网访问远程设备

    本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/11899478.html 通常,我们用于调试的计算机无法远程访问位于局域网中的待调试设备. ...

  4. 一分钟带你了解下MyBatis的动态SQL!

    MyBatis的强大特性之一便是它的动态SQL,以前拼接的时候需要注意的空格.列表最后的逗号等,现在都可以不用手动处理了,MyBatis采用功能强大的基于OGNL的表达式来实现,下面主要介绍下. 一. ...

  5. python的文件操作及简单的用例

    一.python的文件操作介绍 1.文件操作函数介绍 open() 打开一个文件 语法:open(file, mode='r', buffering=-1, encoding=None, errors ...

  6. objc反汇编分析__strong和__weak

    如题所说反汇编看__strong和__weak的真实样子,代码列举自然多,篇幅长不利于阅读,我就先搬出结论,后面是分析. 在NON-ARC环境,__strong和__weak不起作用.相反在ARC环境 ...

  7. windows版的mysql主从复制环境搭建

    背景 最近在学习用Spring Aop来实现数据库读写分离的功能. 在编写代码之前,首先是要部署好mysql的环境,因为要实现读写分离,所以至少需要部署两个mysql实例,一主一从,并且主从实例之间能 ...

  8. Spring项目中优雅的异常处理

    前言 如今的Java Web项目多是以 MVC 模式构建的,通常我们都是将 Service 层的异常统一的抛出,包括自定义异常和一些意外出现的异常,以便进行事务回滚,而 Service 的调用者 Co ...

  9. 经典sql面试题(学生表_课程表_成绩表_教师表)

    转载:https://www.cnblogs.com/qixuejia/p/3637735.html 表架构 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cna ...

  10. .net压缩文件

    首先nuget安装DotNetZip 代码很少