当前位置: 首页 > news >正文

python基础学习-03 安装

python3 可应用于多平台包括 Windows、Linux 和 Mac OS X。

  • Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)
  • Win 9x/NT/2000
  • Macintosh (Intel, PPC, 68K)
  • OS/2
  • DOS (多个DOS版本)
  • PalmOS
  • Nokia 移动手机
  • Windows CE
  • Acorn/RISC OS
  • BeOS
  • Amiga
  • VMS/OpenVMS
  • QNX
  • VxWorks
  • Psion
  • Python 同样可以移植到 Java 和 .NET 虚拟机上。


Python3 下载

Python3 最新源码,二进制文档,新闻资讯等可以在 Python 的官网查看到:

Python 官网:Welcome to Python.org

你可以在以下链接中下载 Python 的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。

Python文档下载地址:Our Documentation | Python.org


Python 安装

Python 已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。

您需要下载适用于您使用平台的二进制代码,然后安装 Python。

如果您平台的二进制代码是不可用的,你需要使用C编译器手动编译源代码。

编译的源代码,功能上有更多的选择性, 为 Python 安装提供了更多的灵活性。

以下是各个平台安装包的下载地址:

Source Code 可用于 Linux 上的安装。

以下为不同平台上安装 Python3 的方法。

Unix & Linux 平台安装 Python3:

以下为在 Unix & Linux 平台上安装 Python 的简单步骤:

  • 打开 WEB 浏览器访问 Python Source Releases | Python.org
  • 选择适用于 Unix/Linux 的源码压缩包。
  • 下载及解压压缩包 Python-3.x.x.tgz3.x.x 为你下载的对应版本号。
  • 如果你需要自定义一些选项修改 Modules/Setup

 Python3.6.1 版本为例:

# tar -zxvf Python-3.6.1.tgz
# cd Python-3.6.1
# ./configure
# make && make install

检查 Python3 是否正常可用:

# python3 -V
Python 3.6.1

Window 平台安装 Python:

以下为在 Window 平台上安装 Python 的简单步骤。

打开 WEB 浏览器访问 Python Releases for Windows | Python.org ,一般就下载 executable installer,x86 表示是 32 位机子的,x86-64 表示 64 位机子的。

记得勾选 Add Python 3.6 to PATH

按 Win+R 键,输入 cmd 调出命令提示符,输入 python:

也可以在开始菜单中搜索 IDLE

MAC 平台安装 Python:

MAC 系统都自带有 Python2.7 环境,你可以在链接 Python Releases for macOS | Python.org 上下载最新版安装 Python 3.x。

你也可以参考源码安装的方式来安装。


环境变量配置

程序和可执行文件可以在许多目录,而这些路径很可能不在操作系统提供可执行文件的搜索路径中。

path(路径)存储在环境变量中,这是由操作系统维护的一个命名的字符串。这些变量包含可用的命令行解释器和其他程序的信息。

Unix 或 Windows 中路径变量为 PATH(UNIX 区分大小写,Windows 不区分大小写)。

在 Mac OS 中,安装程序过程中改变了 Python 的安装路径。如果你需要在其他目录引用 Python,你必须在 path 中添加 Python 目录。

在 Unix/Linux 设置环境变量

  • 在 csh shell: 输入
    setenv PATH "$PATH:/usr/local/bin/python"
    , 按下 Enter
  • 在 bash shell (Linux) 输入 :
    export PATH="$PATH:/usr/local/bin/python" 
    按下 Enter 。
  • 在 sh 或者 ksh shell 输入:
    PATH="$PATH:/usr/local/bin/python" 
    按下 Enter。

注意: /usr/local/bin/python 是 Python 的安装目录。

在 Windows 设置环境变量

在环境变量中添加Python目录:

在命令提示框中(cmd) : 输入

path=%path%;C:\Python 

按下"Enter"。

注意: C:\Python 是Python的安装目录。

也可以通过以下方式设置:

  • 右键点击"计算机",然后点击"属性"
  • 然后点击"高级系统设置"
  • 选择"系统变量"窗口下面的"Path",双击即可!
  • 然后在"Path"行,添加python安装路径即可(我的D:\Python32),所以在后面,添加该路径即可。 ps:记住,路径直接用分号";"隔开!
  • 最后设置成功以后,在cmd命令行,输入命令"python",就可以有相关显示。


Python 环境变量

下面几个重要的环境变量,它应用于Python:

变量名描述
PYTHONPATHPYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找。
PYTHONSTARTUPPython启动后,先寻找PYTHONSTARTUP环境变量,然后执行此变量指定的文件中的代码。
PYTHONCASEOK加入PYTHONCASEOK的环境变量, 就会使python导入模块的时候不区分大小写.
PYTHONHOME另一种模块搜索路径。它通常内嵌于的PYTHONSTARTUP或PYTHONPATH目录中,使得两个模块库更容易切换。


运行 Python

有三种方式可以运行 Python:

1、交互式解释器:

你可以通过命令行窗口进入 Python 并开始在交互式解释器中开始编写 Python 代码。

你可以在 Unix、DOS 或任何其他提供了命令行或者 shell 的系统进行 Python 编码工作。

$ python             # Unix/Linux或者  C:>python           # Windows/DOS

以下为 Python 命令行参数:

选项描述
-d在解析时显示调试信息
-O生成优化代码 ( .pyo 文件 )
-S启动时不引入查找Python路径的位置
-V输出Python版本号
-X从 1.6版本之后基于内建的异常(仅仅用于字符串)已过时。
-c cmd执行 Python 脚本,并将运行结果作为 cmd 字符串。
file在给定的python文件执行python脚本。

2、命令行脚本

在你的应用程序中通过引入解释器可以在命令行中执行Python脚本,如下所示:

$ python  script.py          # Unix/Linux或者C:>python script.py         # Windows/DOS

注意:在执行脚本时,请检查脚本是否有可执行权限。

3、集成开发环境(IDE:Integrated Development Environment): PyCharm

PyCharm 是由 JetBrains 打造的一款 Python IDE,支持 macOS、 Windows、 Linux 系统。

PyCharm 功能 : 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制……

PyCharm 下载地址 : Download PyCharm: Python IDE for Professional Developers by JetBrains

PyCharm 安装地址:http://www.runoob.com/w3cnote/pycharm-windows-install.html

Professional(专业版,收费):完整的功能,可试用 30 天。

Community(社区版,免费):阉割版的专业版。

PyCharm 界面:

安装 PyCharm 中文插件,打开菜单栏 File,选择 Settings,然后选 Plugins,点 Marketplace,搜索 chinese,然后点击 install 安装:


Anaconda 集成环境

Anaconda 发行版包含了 Python。

Anaconda 是一个集成的数据科学和机器学习环境,其中包括了 Python 解释器以及大量常用的数据科学库和工具。

Anaconda 包及其依赖项和环境的管理工具为 conda 命令,文与传统的 Python pip 工具相比 Anaconda 的conda 可以更方便地在不同环境之间进行切换,环境管理较为简单。

一、交互模式下执行 Python

这种模式下,无需创建脚本文件,直接在 Python解释器的交互模式下编写对应的 Python 语句即可。
1)打开交互模式的方式:
Windows下:在开始菜单找到“命令提示符”,打开,就进入到命令行模式;在命令行模式输入: python 即可进入 Python 的交互模式

Linux 下:直接在终端输入 python,如果是按装了 python3 ,则根据自己建的软连接的名字进入对应版本的 Python 交互环境,例如我建立软连接使用的 python3,这输入 python3。

2)在交互模式下输出: Hello World!

3)退出交互模式,直接输入 exit() 或者quit() 即可。
Windows:

Linux:

二、通过脚本输出


通过文本编辑器,编写脚本文件,命名为 hello.py,在命令行模式下输入 python hello.py 即可
Windows:

Linux:

同样,也可以带参数(需要导入包 import sys)


这种方式,要注意脚本文件所在路径,如果当前工作路径和脚本文件不在同一路径下,则要进入 脚本文件所在路径,或者给出脚本文件的完整路径。
1)进入脚本文件所在路径下执行

C:\Windows\System32>G:
G:\test>python hello.py
Hello World!

2)给出脚本文件的完整路径

C:\Windows\System32>python G:\test\hello.py
Hello World!

三、在脚本文件中指定 python 程序所在路径,修改文件为可执行文件,然后直接运行文件

在Linux下:
1)修改文件,添加 #!/usr/bin/python3


2)修改文件权限,添加可执行权限:chmod u+x hello.py 
3)运行


此种方式执行的时候,一定要在脚本文件中指定解释器,否则无法直接运行脚本文件

4) python脚本传递参数

四、交互模式和脚本文件方式的比较

1)在交互模式下,会自动打印出运算结果,而通过脚本文件的方式不会
交互模式:

[node02@localhost code]$ python3
Python 3.6.5 (default, Oct 19 2018, 10:46:59) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 100+200
300
>>> exit()

脚本文件:没有任何输出,此时要想输出,必须使用 print 函数进行打印。

[node02@localhost code]$ vi cal.py 
[node02@localhost code]$ cat cal.py 
100+200
[node02@localhost code]$ python3 cal.py 
[node02@localhost code]$ 

2)在交互模式下,每次输入的语句不会被保存,退出交互环境之后即消失,但是通过脚本文件我们可以保存我们写过的所有语句。所以通常都是通过编写 脚本文件的方式来编写 Python 代码。
注意:在编写脚本文件的时候不要使用 word 和 windows 自带的笔记本,因为他们在保存的时候会保存为 utf-8 BOM 格式,这会导致脚本执行错误。可以使用 sublime,editplus,notepad++

相关文章:

python基础学习-03 安装

python3 可应用于多平台包括 Windows、Linux 和 Mac OS X。 Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)Win 9x/NT/2000Macintosh (Intel, PPC, 68K)OS/2DOS (多个DOS版本)PalmOSNokia 移动手机Windows CEAcorn/RISC OSBeOSAmigaVMS/OpenVMSQNXVxWorksP…...

HTML — 区块元素

HTML 通过各种标签将元素组合起来。 一. 区块元素 大多数 HTML 元素被定义为块级元素或内联元素。块级元素在浏览器显示时&#xff0c;通常会以新的行开始。例如&#xff1a;<div>、<h1>、<p>、<ul>等。 它们在使用时会独自占据一行&#xff0c;称为块…...

《PCI Express体系结构导读》随记 —— 第I篇 第3章 PCI总线的数据交换(4)

接前一篇文章&#xff1a;《PCI Express体系结构导读》随记 —— 第I篇 第3章 PCI总线的数据交换&#xff08;3&#xff09; 3.2 PCI设备的数据传递 PCI设备的数据传递使用地址译码方式&#xff0c;当一个存储器读写总线事务到达PCI总线时&#xff0c;在这条总线上的所有PCI设…...

力扣0083——删除排序链表中的重复元素

删除排序链表中的重复元素 难度&#xff1a;简单 题目描述 给定一个已排序的链表的头 head &#xff0c; 删除所有重复的元素&#xff0c;使每个元素只出现一次 。返回 已排序的链表 。 示例1 输入&#xff1a;head [1,1,2] 输出&#xff1a;[1,2]示例2 输入&#xff1a…...

MySQL数据库的一些缩写含义

DDL Data Definition Language&#xff0c;数据定义语言&#xff0c;用来定义数据库对象(数据库&#xff0c;表&#xff0c;字段) DML DML英文全称是Data Manipulation Language(数据操作语言)&#xff0c;用来对数据库中表的数据记录进 行增、删、改操作。 添加数据&#x…...

解决 ssh: connect to host github.com port 22: Connection timed out

问题 今天使用git克隆github上的代码时&#xff0c;一直报错 原以为是公钥过期了&#xff0c;就尝试修改配置公钥&#xff0c;但是尝试了几次都不行&#xff0c;最终在博客上找到了解决方案&#xff0c;在次记录一下&#xff0c;以备不时之需 解决ssh-connect-to-host-github…...

【iOS ARKit】同时开启前后摄像头BlendShapes

在上一节中已经了解了 iOS ARkit 进行BlendShapes的基本操作&#xff0c;这一小节继续实践同时开启前后摄像头进行人脸捕捉和世界追踪。 iOS设备配备了前后两个摄像头&#xff0c;在运行AR 应用时&#xff0c;需要选择使用哪个摄像头作为图像输人。最常见的AR 体验使用设备后置…...

Vue3动态插入组件

一、使用<component>is实现动态组件插入 <component>&#xff1a;一个用于渲染动态组件或元素的“元组件”。 :is : 要渲染的实际组件&#xff0c;当 is 是字符串&#xff0c;它既可以是 HTML 标签名也可以是组件的注册名。 <script> import Foo from ./F…...

介绍一下OpenCV中常用的图像处理函数

OpenCV中常用的图像处理函数有很多&#xff0c;以下是其中一些函数的介绍&#xff1a; - cvLoadImage()&#xff1a;读入图像函数。 - imshow()&#xff1a;显示图像函数。 - imwrite()&#xff1a;保存图像函数。 - Mat srcImage imread()&#xff1a;读入图像函数。 - …...

vscode vim 快捷键汇总

需满足操作&#xff1a; 上下移动按照 word 移动选中增删改查找字符/变量移动、增加、复制、删除 行选中多个相同的变量/字符屏幕移动增加多个光标快速注释 上下左右移动 CommandDescription&#x1f522; hleft (also: CTRL-H, BS, or Left key)&#x1f522; lright (also…...

npm官方注册表和淘宝镜像切换

1.切换到淘宝镜像 加快npm包的下载速度&#xff0c; //已失效 //npm config set registry https://registry.npm.taobao.org/ npm config set registry https://registry.npmmirror.com这会将npm的注册表设置为淘宝镜像 查看&#xff1a; npm config get registry如果返回的…...

LFU算法

LFU算法 Least Frequently Used&#xff08;最不频繁使用&#xff09; Leetcode有原题&#xff0c;之前手写过LRU&#xff0c;数据结构还是习惯于用java实现&#xff0c;实现是copy的评论题解。 题解注释写的很清楚 大致就是说LFUCache类维护一个存放node的map&#xff0c;同…...

JVM系列-7内存调优

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱吃芝士的土豆倪&#xff0c;24届校招生Java选手&#xff0c;很高兴认识大家&#x1f4d5;系列专栏&#xff1a;Spring原理、JUC原理、Kafka原理、分布式技术原理、数据库技术、JVM原理&#x1f525;如果感觉博主的文…...

[UI5 常用控件] 01.Text

文章目录 前言1. 普通文本2. 长文本&#xff1a;3. 设置最大显示行数 ( maxLines3 )4. 单行显示 ( wrappingfalse )5. 显示空白符 ( renderWhitespacetrue )6. 使用 - 连接单词:只适用于英文 ( wrappingTypeHyphenated )7. 空白时使用 - 代替 ( emptyIndicatorModeOn )8. JSON数…...

C语言之指针的地址和指向的内容总结(八十四)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…...

1月25日,每日信息差

第一、中国和新加坡互免签证&#xff0c;新加坡酒店搜索量较发布前增长4倍。去哪儿数据显示&#xff0c;新加坡酒店搜索量较发布前增长4倍&#xff0c;仍在持续增长中。同程旅行数据显示&#xff0c;消息发布半小时内&#xff0c;同程旅行平台新加坡相关搜索热度较前日同一时段…...

前端工程化之:webpack1-3(模块化兼容性)

一、模块化兼容性 由于 webpack 同时支持 CommonJs 和 ES6 module &#xff0c;因此需要理解它们互操作时 webpack 是如何处理的。 二、同模块化标准 如果导出和导入使用的是同一种模块化标准&#xff0c;打包后的效果和之前所说的模块化没有任何差异。 CommonJS&#xff…...

JDK8新特性(一)

一、概述 JDK8&#xff0c;又称为JDK 1.8&#xff0c;是Java语言开发的里程碑版本。这个版本引入了众多令人兴奋的新特性&#xff0c;让Java更加灵活和强大。其中&#xff0c;最引人注目的新特性包括Lambda表达式、方法引用、默认方法、Stream API、新的日期和时间API以及Optio…...

java实现ftp协议远程网络下载文件

引言 在开发过程中&#xff0c;偶尔会遇到网络文件在FTP服务上存储着&#xff0c;对于这种情况想要下载到本地还有些麻烦&#xff0c;我们直接上世界上最简单的代码。 How to do 1.提前引入包 <!--hutool万能工具包--><dependency><groupId>cn.hutool<…...

深入浅出理解目标检测的NMS非极大抑制

一、参考资料 物体检测中常用的几个概念迁移学习、IOU、NMS理解 目标定位和检测系列&#xff08;3&#xff09;&#xff1a;交并比&#xff08;IOU&#xff09;和非极大值抑制&#xff08;NMS&#xff09;的python实现 Pytorch&#xff1a;目标检测网络-非极大值抑制(NMS) …...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版&#xff0c;柱状图PPT模版&#xff0c;线状图PPT模版&#xff0c;折线图PPT模版&#xff0c;饼状图PPT模版&#xff0c;雷达图PPT模版&#xff0c;树状图PPT模版 图表类系列各种样式PPT模版分享&#xff1a;图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

Bean 作用域有哪些?如何答出技术深度?

导语&#xff1a; Spring 面试绕不开 Bean 的作用域问题&#xff0c;这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开&#xff0c;结合典型面试题及实战场景&#xff0c;帮你厘清重点&#xff0c;打破模板式回答&#xff0c…...