一个好的python文件可以有几种用途?

news2024/9/30 5:38:39

大家好鸭!我是小熊猫~

这次来带大家浅浅回顾一点python小知识~

源码资料电子书:点击此处跳转文末名片获取

在这里插入图片描述


python文件总共有两种用途:

  • 一种是执行文件
  • 另一种是被当做模块导入

编写好的一个python文件可以有两种用途:

1. 脚本,一个文件就是整个程序,用来被执行
2. 模块,文件中存放着一堆功能,用来被导入使用

如果直接运行run.py会直接运行aaa.py中的f1()f2()

# aaa.py
x = 1

def f1():
    print('from f1')

def f2():
    print('from f2')

f1()
f2()
import aaa

aaa.py中加上if __name__ == '__main__':

可以防止运行run.py时执行f1()和f2()。因为当aaa.py被直接执行,即当做执行文件的时候__name__ == '__main__'

# aaa.py
x = 1

def f1():
    print('from f1')

def f2():
    print('from f2')

if __name__ == '__main__':
    f1()
    f2()

aaa.py中加上if __name__ == 'aaa':

aaa.py被当做模块直接运行的时候

x = 1

def f1():
    print('from f1')

def f2():
    print('from f2')

if __name__ == 'aaa':
    f1()
    f2()

在这里插入图片描述

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/373439.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Laravel框架02:路由与控制器

Laravel框架02:路由与控制器一、路由配置文件二、路由参数三、路由别名四、路由群组五、控制器概述六、控制器路由七、接收用户输入一、路由配置文件 以web网页路由文件为例: 默认根路由 路由定义格式Route::请求方式(请求的URL, 匿名函数或控制响应的方…

【MongoDB】一、MongoDB的安装与部署

【MongoDB】一、MongoDB的安装与部署实验目的实验内容实验步骤一、下载MongoDB安装包二、创建文件夹data及子文件夹db和log三、启动MongDB服务1. 在命令行窗口执行启动MongoDB服务命令2. 打开mongodb.log3. 打开浏览器进行启动验证四、登录MongoDB五、配置环境变量六、将MongDB…

yii-shopwind商城多数页面报错,修改mysql一个配置就解决!

解决办法打开mysql配置文件,在[mysqld]下添加如下一行:sql_modeNO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES成功解决!还以为是网站的代码问题, 惊讶到我了. 开源网站下载下来就报错 多不可思议. 终于是配置的问题!加油报错信息如下是其中一个界面的&…

银行数字化转型导师坚鹏:招商银行数字化转型战略研究

招商银行数字化转型战略研究课程背景: 很多银行存在以下问题: 不清楚如何制定银行数字化转型战略? 不知道其它银行的数字化转型战略是如何演变的? 课程特色: 用实战案例解读招商银行数字化转型战略。 用独特视角解…

【自然语言处理】基于句子嵌入的文本摘要算法实现

基于句子嵌入的文本摘要算法实现人们在理解了文本的含义后,很容易用自己的话对文本进行总结。但在数据过多、缺乏人力和时间的情况下,自动文本摘要则显得至关重要。一般使用自动文本摘要的原因包括: 减少阅读时间根据摘要,选择自…

Widget中的State-学习笔记

Widget 有 StatelessWidget 和 StatefulWidget 两种类型。StatefulWidget 应对有交互、需要动态变化视觉效果的场景,而 StatelessWidget 则用于处理静态的、无状态的视图展示。StatefulWidget 的场景已经完全覆盖了 StatelessWidget,因此我们在构建界面时…

如何把Windows自带壁纸、锁屏壁纸取出作为自己的桌面壁纸?(附:批量更改文件后缀名的方法)

这是一个目录0.0Windows桌面自带壁纸(个性化中的壁纸)Windows聚焦的锁屏壁纸批量更改后缀名的办法最近开机时,发现Windows聚焦的锁屏壁纸都很好看,特别想留下来当桌面壁纸,寻找了一下之后,终于找到了储存路…

第一节 变量、数据类型、关键字标识符

变量 什么是变量:就是用来存储一个数据的内存区域,而且里面存储的数据可以变化。 double money 10.0; 变量使用的注意事项: 1.先声明再使用。 2.变量声明后,就不能存储其他数据。 3.变量的有效范围是从定义开始到“}…

Dubbo源码解析-——SPI机制

文章目录一、什么是SPI机制二、Java原生的SPI机制2.1、javaSPI示例2.1.1、编写接口和实现类2.1.2、编写配置文件2.1.3、通过SPI机制加载实现类2.1.4、JAVA SPI 源码解析2.1.4.1、ServiceLoader#load2.1.4.2、ServiceLoader构造方法2.1.4.3、ServiceLoader#reload2.1.4.4、LazyI…

IoT项目系统架构案例2

项目背景 1.这个项目是对之前的案例的升级改造参考:IoT项目系统架构案例_iot案例_wxgnolux的博客-CSDN博客2.基于方案1的项目实施过程中碰到的问题,对硬件设备标准化的理念及新的功能需求(如根据天气预报温度调水温,APP界面可操作性优化等)•采用目前IoT主流厂商的架…

java的一些冷知识

接口并没有继承Object类首先接口是一种特殊的类,理由就是将其编译后是一个class文件大家都知道java类都继承自Object,但是接口其实是并没有继承Object类的 可以自己写代码测试: 获取接口类的class对象后遍历它的methods,可以发现是不存在Obje…

Java EE|TCP/IP协议栈之网络层IP协议详解

文章目录一、IP协议感性认知简介特点二、IP协议报头结构4位版本4位首部长度8位服务类型16位总长度16位标识8位生存时间(TTL)8位协议16位首部长度32位源ip&32位目的地址三、网络地址管理网段划分路由选择参考一、IP协议感性认知 简介 P是整个TCP/IP…

【云原生】k8s的pod基本概念

一、资源限制 Pod 是 kubernetes 中最小的资源管理组件,Pod 也是最小化运行容器化应用的资源对象。一个 Pod 代表着集群中运行的一个进程。kubernetes 中其他大多数组件都是围绕着 Pod 来进行支撑和扩展 Pod 功能的,例如用于管理 Pod 运行的 StatefulSe…

小说网站测试

目录 通用测试点 登录页面测试 接口测试 UI测试 注册页面 接口自动化 UI测试 忘记密码页面 接口测试 UI测试 修改密码页面 进行接口测试 UI测试 主页页面测试 分类页面测试 ​查询页面测试 作者页面测试 阅读小说页面测试 书架页面测试 通用测试点 登录页面测试 接…

k8s-资源限制-探针检查

文章目录一、资源限制1、资源限制的使用2、reuqest资源(请求)和limit资源(约束)3、Pod和容器的资源请求和限制4、官方文档示例5、资源限制实操5.1 编写yaml资源配置清单5.2 释放内存(node节点,以node01为例…

计算机网络题库---错题本

(一)老生常谈 第一章: 1.什么是计算机网络?其主要功能是什么? 解答: 利用通信设备和线路,将分布在地理位置不同的、功能独立的多个计算机系统连接起来,以功能完善的网络软件实现网…

ChatGPT 开发人员教程 - 38种提高工作效率10倍的方法

未来的时代,又将是一个“洋枪洋炮”对“大刀长矛”的时代。在过去的十年里,传统行业在和经过IT改造的行业竞争时,无一例外地败北。08年金融危机前,全世界市值前十的公司,只有微软一家是IT企业。仅仅过去了十年&#xf…

文献阅读:Training language models to follow instructions with human feedback

文献阅读:Training language models to follow instructions with human feedback 1. 文献工作简介2. 模型优化设计3. 实验结果4. 总结 & 思考 文献链接:https://arxiv.org/abs/2203.02155 1. 文献工作简介 这篇文章是OpenAI在上年提出的一篇对于…

Go项目(商品微服务-1)

文章目录简介建表protohandler商品小结简介 商品微服务主要在于表的设计,建哪些表?表之间的关系是怎样的? 主要代码就是 CURD表和字段的设计是一个比较有挑战性的工作,比较难说清楚,也需要经验的积累,这里…

【Linux】工具(2)——vim

本期博客我们进入到Linux环境下vim工具的学习:一、vim是什么📌Vim是一个超级超级强大的文本编辑器。Vim及前身VI,历史悠久(可能比多数读者的年龄更大),经历了几十年的考验和发展。Vim全称叫Vi IMproved. 而…