Python导入或执行python源文件的3种方法

 更新时间:2023年08月24日 10:20:01   作者:笨牛慢耕  
这篇文章主要给大家介绍了关于Python导入或执行python源文件的3种方法,python源代码的文件以"py"为扩展名,由python.exe解释,可以在控制台下运行,需要的朋友可以参考下

概要

本文介绍python中导入或执行python源文件(通常是从另一个python源文件中)的几种常用方法。包括import, exec(), os.system()等。

方法1:import

第一种方式是使用import。

比如说有一个文件hello_world.py,内容如下:

helloWorldStr = 'Hello, welcome to python world!'
def HelloWorld():
    print('HelloWorld(): Hello, welcome to python world!')
print('hello_world.py: HelloWorld(): Hello, welcome to python world!')    

然后,在另一个python源文件(假定与hello_world.py在同一个文件夹)中import这个文件(每一格python源文件都被看做是一个Module)。python中import一个文件时不仅仅是把这个文件读入而已,而是把它执行了一次(除了 if __name__ == '__main__': 所限定的部分)。

import hello_world
print(hello_world.helloWorldStr)
hello_world.HelloWorld()

执行后的结果如下所示:

hello_world.py: HelloWorld(): Hello, welcome to python world!
Hello, welcome to python world!
HelloWorld(): Hello, welcome to python world!

总共打印了三次。第一次是import时直接执行hello_world.py中的打印语句。第二次是当前文件中的print语句,其中直接利用了hello_world.py中定义的字符串变量。第三次是调用了hello_world.py中的定义的函数。

方法2:exec()

第二种方式是使用python内置函数exec()。使用例如下:

with open('hello_world.py','r') as f:
    exec(f.read())   

可以写成更为简洁的方式:

exec(open('hello_world.py','r').read())

 以上两种写法等价,运行可得:

hello_world.py: HelloWorld(): Hello, welcome to python world!

方法3:os.system()

第三种方式是使用os.system()生成子进程的方式,示例如下:

import os
os.system('python hello_world.py')

运行结果同上一节。

总结

到此这篇关于Python导入或执行python源文件的3种方法的文章就介绍到这了,更多相关Python导入执行python源文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python海龟绘图实例教程

    python海龟绘图实例教程

    这篇文章主要介绍了python海龟绘图实例教程,需要的朋友可以参考下
    2014-07-07
  • OpenCV实战案例之车道线识别详解

    OpenCV实战案例之车道线识别详解

    计算机视觉在自动化系统观测环境、预测该系统控制器输入值等方面起着至关重要的作用,下面这篇文章主要给大家介绍了关于OpenCV实战案例之车道线识别的相关资料,需要的朋友可以参考下
    2022-10-10
  • TensorFlow命名空间和TensorBoard图节点实例

    TensorFlow命名空间和TensorBoard图节点实例

    今天小编就为大家分享一篇TensorFlow命名空间和TensorBoard图节点实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python爬虫爬取爱奇艺电影片库首页的实例代码

    Python爬虫爬取爱奇艺电影片库首页的实例代码

    这篇文章主要介绍了Python爬虫爬取爱奇艺电影片库首页的实例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-05-05
  • Python机器学习之PCA降维算法详解

    Python机器学习之PCA降维算法详解

    今天带大家复习python机器学习的知识点,文中对PCA降维算法介绍的非常详细,对正在学习python机器学习的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • Tensorflow的DataSet的使用详解

    Tensorflow的DataSet的使用详解

    本文主要介绍了Tensorflow的DataSet的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • python程序中的线程操作 concurrent模块使用详解

    python程序中的线程操作 concurrent模块使用详解

    这篇文章主要介绍了python程序中的线程操作 concurrent模块使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • python2和python3实现在图片上加汉字的方法

    python2和python3实现在图片上加汉字的方法

    python2和python3实现在图片上加汉字,最主要的区别还是内部编码方式不一样导致的,在代码上表现为些许的差别。这篇文章主要介绍了python2和python3实现在图片上加汉字,需要的朋友可以参考下
    2019-08-08
  • python处理PHP数组文本文件实例

    python处理PHP数组文本文件实例

    这篇文章主要介绍了python处理PHP数组文本文件实例,本文的PHP数组文本是多个redis数据库的配置文件,需求是提取相关参数组合成Shell命令,需要的朋友可以参考下
    2014-09-09
  • python操作RabbitMq的三种工作模式

    python操作RabbitMq的三种工作模式

    这篇文章主要为大家介绍了python操作RabbitMq的三种工作模式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04

最新评论