Python运行的方式
Python的运行方式多种多样,下面列举几种:
交互式
在命令行中输入python,然后在>>>提示符后面输入Python语句,这里需要注意:
1 语句前面不能有空格,否则会报错
2 对于符合语句,前面会有...提示符,结束符合语句的方法是按下Enter键
命令行运行文件
以命令行运行文件有两种形式:
1 将文件保存为.py,然后在命令行用python 文件名.py的方式运行
2 将文件当成shell脚本,以运行shell的方式运行,此时在文件第一行,需要写#!/usr/bin/python,用来告诉使用Python来运行下面的命令,但是为了可移植性,即#!后面不要写死python的目录(因为不同的机器,可能python所在的目录不一样),可以使用#!/usr/bin/evn python代替,evn会自动搜寻Python解析器的位置,在大多数Unix的shell中,搜寻的路径通常就是PATH环境变量中指定的目录
import语句
import语句导入Python模块(所谓模块,简单来看,就是.py结尾的Python文件)时,会将这个模块的语句执行一遍,因此,也可以使用import来执行Python命令,但是import在一个Python运行周期里面,对于同一个文件只会导入一次,也就是说也只会执行一次。
reload函数
reload函数可以对已经被import导入的文件执行多次(没有被导入的文件无法用reload执行),因此,reload也可以执行文件:
#假设script.py已经被导入过
from imp import reload
reload(script)
需要注意的是:
1 reload在Python2.X中是内置函数,但是是在Python3.X中,被移动到了imp模块里面
2 没有被import的模块,reload无法执行,上面已经提及
3 reload不具有传递性,即reload只会reload script.py本身,对于script.py内部import的模块,reload不会执行
exec函数
可以使用exec来执行Python文件:
exec(open("script.py").read())
需要注意的是:
1 exec的作用就好比把script.py文件的内容粘贴到这条语句的位置,然后执行,这样带来的坏处就是,可能会有变量覆盖的风险
2 在Python2.X中,还包括execfile("script.py")和exec(open("script.py"))的形式,但是,这两种形式在Python3.X中都不支持
Python运行的方式的更多相关文章
- day2 编程语言介绍、Python运行程序的两种方式、变量
一 编程语言介绍 1. 机器语言 用计算机能理解的二进制指令直接编写程序,直接控制硬件 2. 汇编语言 用英文标签取代二进制指令编写程序,本质也是直接控制硬件 3. 高级语言 用人能理解的表达方式去编 ...
- Python黑帽编程1.3 Python运行时与包管理工具
Python黑帽编程1.3 Python运行时与包管理工具 0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Attack and ...
- [修]python普通继承方式和super继承方式
[转]python普通继承方式和super继承方式 原文出自:http://www.360doc.com/content/13/0306/15/9934052_269664772.shtml 原文的错 ...
- 自动化测试 Appium之Python运行环境搭建 Part1
Appium之Python运行环境搭建 Part1 by:授客 QQ:1033553122 实践环境 Win7 Python 3.4.0 JAVA JDK 1.8.0_121 node.js8.11. ...
- 为什么python运行的慢
最近在leetcode刷题,明显的注意到同样的算法,python运行的要慢的多,查资料得到python运行的慢主要原因如下: 一.动态类型导致运行速度慢,在北邮人论坛里面的这篇帖子中有较为详细的解释, ...
- python通过get方式,post方式发送http请求和接收http响应-urllib urllib2
python通过get方式,post方式发送http请求和接收http响应-- import urllib模块,urllib2模块, httplib模块 http://blog.163.com/xyc ...
- 隔离python 运行环境和Pycharm 设置代码同步
隔离python 运行环境 查看当前有哪些虚拟环境:workon 进入虚拟环境:workon django 退出虚拟环境:deactivate 创建虚拟环境: mkvirtualenv -p /usr ...
- Python逆向(一)—— 前言及Python运行原理
一.前言 最近在学习Python逆向相关,涉及到python字节码的阅读,编译及反汇编一些问题.经过长时间的学习有了一些眉目,为了方便大家交流,特地将学习过程整理,形成了这篇专题.专题对python逆 ...
- java 通过runtime 调用python 不显示python运行内容的bug
先说下上面问题的原因,上面问题是因为python中用到了第三方的类库,你的电脑上没有那个类库,所以程序没有运行,在控制台也就看不到输出.只要导入那个类库就好... python 导入类库,可以单独下载 ...
随机推荐
- 20181030noip模拟赛T1
YY的矩阵 YY有一个大矩阵(N*M), 矩阵的每个格子里都有一个整数权值W[i,j](1<=i<=M,1<=j<=N) 对于这个矩阵YY会有P次询问,每次询问这个大矩阵的一个 ...
- visual studio进程或线程自上一个步骤以来已更改
1.自己的解决方案:visual studio在多进程执行,在配置页面(webconfig)里把UseCounterThread参数设置为0 2.公司其他人解决方案,自己试了,多进程执行的时候没起作用 ...
- APSC4xSeries_Ver32.exe在win764位提示缺少DLL错误解决办法
APSC4xSeries_Ver32.exe在win764位提示缺少DLL错误解决办法 从网上下载oatime_epson-me1清零软件,Stylus4xProgram_Ver32的 解决办法:还是 ...
- 使用TryParse()来执行数值转换
static void Main() { var ageText = "25"; if (int.TryParse(ageText,out int age)) { Console. ...
- 利用HaoheDI从数据库抽取数据导入到hbase中
下载apache-phoenix-4.14.0-HBase-1.4-bin.tar.gz 将其中的 phoenix-4.14.0-HBase-1.4-client.jar phoenix-core-4 ...
- 四、分离分层的 platform驱动
学习目标: 学习实现platform机制的分层分离,并基于platform机制,编写led设备和驱动程序: 一.分离分层 输入子系统.usb设备比驱动以及platform类型的驱动等都体现出分离分层机 ...
- 第九篇:S3C2400时钟体系
S3C2400时钟体系 S3C2400时钟配置流程 该学习板使用了外部晶振12Mhz 晶振--->经过MPLL(锁相环) --->(倍频得到)FCLK--->(对FCLK分频得到)H ...
- ubuntu安装cuda、cudnn
环境: Ubuntu 16.04.4 LTS CUDA:8.0 CUDNN:5.1 CUDA下载:https://developer.nvidia.com/cuda-80-ga2-download-a ...
- (数据科学学习手札39)RNN与LSTM基础内容详解
一.简介 循环神经网络(recurrent neural network,RNN),是一类专门用于处理序列数据(时间序列.文本语句.语音等)的神经网络,尤其是可以处理可变长度的序列:在与传统的时间序列 ...
- windows下安装mongodb的崩溃史
一.下载 官方网站的下载页面打不开https://www.mongodb.com/download-center?jmp=nav 问朋友要了一份,是3.6的,下载安装会卡死.弄了一个小时也半点反应没有 ...