python引用自己的文件的一切问题

目录

    • 关于引入和使用方法
          • 方式一:调用另一个文件的变量和函数
          • 方式二:调用另一个文件的类
    • 关于执行顺序

关于引入和使用方法

方式一:调用另一个文件的变量和函数

main.py

from batch import *print("在main调用batch的变量NUM:",NUM)
print("在main调用batch的方法test():",test())

batch.py

NUM = 10
def test():return "batch's test()"

结果:

在main调用batch的变量NUM: 10
在main调用batch的方法test(): batch's test()
方式二:调用另一个文件的类

main.py

from data import Data         # 这样的好处在于可以起别名:from data import Data as D
#from data import *           # 这样也是可以的d = Data()
print("调用类的变量:",d.n_user)
print("调用类的方法:",d.info())

data.py

class Data():def __init__(self):self.n_user = 100def info(self):return "This is Data's method..."

结果:

调用类的变量: 100
调用类的方法: This is Data's method...

关于执行顺序

在主文件中,程序顺序执行
执行 import 动作时,如果引入的文件中的主进程中有可执行的代码,则会在引入的时候执行完毕

通俗来讲,可以看作把引入文件的代码全都复制粘贴到主文件import的位置。?

main.py

from batch import *print("main--N_USER:",N_USER)print("ok1")if __name__=="__main__":print("ok2")for i in range(3):test()print("ok3")

batch.py

from data import Datad = Data()
N_USER = d.n_user
print("N_USER",N_USER)def test():user_len = N_USERprint("just 调用:",user_len)

data.py

class Data():def __init__(self):self.n_user = 100

结果:

batch--N_USER: 100      # 在import的时候就执行了引入文件的代码
main--N_USER: 100       # 接下来就是依次执行主进程中的代码
ok1
ok2
just 调用: 100          # 在调用引入文件函数的时候只执行函数部分,其他部分不会再执行
just 调用: 100
just 调用: 100
ok3

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

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

相关文章

首篇严肃的“BERT学”研究,40+论文对比,解读 BERT 工作原理

BERT解读(论文 TensorFlow源码):https://blog.csdn.net/Magical_Bubble/article/details/89514057?depth_1- 解读ALBERT: https://blog.csdn.net/weixin_37947156/article/details/101529943 一文揭开ALBERT的神秘面纱&#…

图Graph--最短路径算法(Shortest Path Algorithm)

文章目录1. 算法解析BFS,DFS 这两种算法主要是针对无权图的搜索算法。针对有权图,图中的每条边都有权重,如何计算两点之间的最短路径(经过的边的权重和最小)呢?像Google地图、百度地图、高德地图这样的地图软件&#x…

BAT架构师进阶:大型网站架构书籍推荐

“ 书籍推荐分为如下: 大型网站架构系列 分布式系统系列 BAT技术系列 架构设计系列 一:大型网站架构系列 第一本:《大型网站技术架构:核心原理与案例分析》 这本书主要从大型网站架构的特点,架构目标&#xff08…

FLAT:中文NER屠榜之作

本文转载自公众号“夕小瑶的卖萌屋”,专业带逛互联网算法圈的神操作 -----》我是传送门 关注后,回复以下口令: 回复【789】 :领取深度学习全栈手册(含NLP、CV海量综述、必刷论文解读) 回复【入群】&#xf…

Tensorflow实现LSTM详解

关于什么是 LSTM 我就不详细阐述了,吴恩达老师视频课里面讲的很好,我大概记录了课上的内容在吴恩达《序列模型》笔记一,网上也有很多写的好的解释,比如:LSTM入门、理解LSTM网络 然而,理解挺简单&#xff0…

论文浅尝 | 一个模型解决所有问题:实体和事件的神经联合模型

笔记整理:康矫健,浙江大学计算机科学与技术系,硕士研究生。论文链接:https://arxiv.org/pdf/1812.00195.pdf发表会议:AAAI 2019摘要 近来,针对事件抽取的工作大都集中在预测事件的triggers和arguments r…

AutoPep8-----Pycharm自动排版工具

查找pycharm中的external tool的步骤: https://jingyan.baidu.com/article/84b4f565bd39a060f6da3211.html 今天从 PyCharm 入手,写一些可以明显改善开发效率的使用技巧,一旦学会,受用一生。以下代码演示是在 Mac 环境下&#xf…

阿里P8架构师谈:java架构师面试技能24全点

1,JAVA基础扎实,理解io、多线程、集合等基础框架,对JVM原理有一定的了解,熟悉常见类库,常见java api不仅会用更能知其所以然; 2,对Spring,MyBatis/Hibernate,Struts2,SpringMVC等开源框架熟悉并且了解到它的基本原理和…

百度自然语言处理部招人啦!正式、实习都要!研究、落地都有!

星标/置顶小屋,带你解锁最萌最前沿的NLP、搜索与推荐技术2010年,百度自然语言处理部正式成立。十年来,百度NLP聚集了一大批兼具扎实技术实力和实践经验的AI人才,获得数十项国内外权威奖项,申请专利上千件,发…

我与导师的聊天记录

虽然导师远在马来西亚,但是每次都是很耐心的回答我的问题,真的是非常感激啦! 我就想记录下来,自己提出的问题,老师给我的解答,算是我研究生生涯的很大一部分生活了吧! 噢~ 还有就是,…

论文浅尝 | 面向知识图谱补全的共享嵌入神经网络模型

论文笔记整理:谭亦鸣,东南大学博士生,研究方向为跨语言知识图谱问答。来源:CIKM’2018链接:http://delivery.acm.org/10.1145/3280000/3271704/p247-guan.pdf?ip121.249.15.96&id3271704&accACTIVE%20SERVICE…

世界小又小,缘分很奇妙!

我发现我这个人啊可真是情绪化 突然就会很难过,难过到什么事情都不能做 有时候会很开心,开心到心情难以平复下来去做事情 现在呢!就是那个太开心了,以至于我有点点写不下去代码! 先写写小博客吧! 今天下午…

PyTorch常用代码段合集

文 | Jack Stark知乎编 | 极市平台来源 | https://zhuanlan.zhihu.com/p/104019160导读本文是PyTorch常用代码段合集,涵盖基本配置、张量处理、模型定义与操作、数据处理、模型训练与测试等5个方面,还给出了多个值得注意的Tips,内容非常全面。…

想成长为一名实战型架构师?7大实战技能经验分享

很多同学想成为一名架构师,但是对于其中的技能掌握程度,以及编程功底的要求?设计能力的要求有哪些? 我简要从以下7点经验来谈,从技能的角度抛砖引玉。 编程基本功:数据结构和算法 1.数据结构相关的哈希表、链表、二叉…

LeetCode 70. 爬楼梯(动态规划)

题目链接:https://leetcode-cn.com/problems/climbing-stairs/ 之前在递归中讲过这个问题,现在用动态规划求解。 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意&…

技术动态 | 藏经阁计划发布一年,阿里知识引擎有哪些技术突破?

本文转载自公众号:阿里技术。导读:2018年4月阿里巴巴业务平台事业部——知识图谱团队联合清华大学、浙江大学、中科院自动化所、中科院软件所、苏州大学等五家机构,联合发布藏经阁(知识引擎)研究计划。藏经阁计划依赖阿…

python中模块、函数与各个模块之间的调用

1 针对一个模块的函数调用 a : import 模块名 模块名.函数名 b: from 模块名 import 函数名 (as 别名) python调用另一个.py文件中的类和函数 同一文件夹下的调用 1.调用函数 A.py文件如下: def add(x,y): print(‘和…

模拟退火算法求解TSP问题

前言:模拟退火(simulated annealing)技术,在每一步都以一定的概率接受比当前结果更差的结果,从而有助于“跳出”局部极小。在每次迭代过程中,接受“次优解”的概率要随着时间的推移而逐渐降低,从…

一篇文章彻底搞懂“分布式事务”

在如今的分布式盛行的时代,分布式事务永远都是绕不开的一个话题,今天就谈谈分布式事务相关的一致性与实战解决方案。 01 为什么需要分布式事务 由于近十年互联网的发展非常迅速,很多网站的访问越来越大,集中式环境已经不能满足业…