day 25 模块与包
一、模块
print('...................')main_actor = '张无忌' main_actress = '赵敏' fan_main_actor = '成昆' fan_main_actress = '周芷若'def light_war():print(f"{main_actor}破坏了{fan_main_actor}的阴谋诡计")def shaolin_war():print(f"{main_actor}打败了{fan_main_actress}")def ending():print(f"{main_actor}和{fan_main_actress}幸福的在一起了")def change(name):global main_actormain_actor = name print("..................."
import sys import yitian as yt # as 给模块重新命名# pycharm报错,模块路径有差异 # sys.path 搜索模块的路径 # print(sys.path) # import yitian # 如果已经到如果该模块,此时则不会再执行模块中的代码了print(yt.main_actor) # print(main_actor) 报错 当前名称空间中没有main_actoryt.light_war() yt.shaolin_war() yt.ending()
print(globals())结果:{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x00000172F298C1D0>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'F:/python_workspace_hxt/day24 内置模块 re/yitian.py', '__cached__': None, 'main_actor': '张无忌', 'main_actress': '赵敏', 'fan_main_actor': '成昆', 'fan_main_actress': '周芷若', 'light_war': <function light_war at 0x00000172F2881E18>, 'shaolin_war': <function shaolin_war at 0x00000172F2BFA268>, 'ending': <function ending at 0x00000172F2BFA158>, 'change': <function change at 0x00000172F9C3A400>}
注: 由于模块在导入的时候会创建自己的名称空间,所以在使用模块中的变量的时候一般不会产生冲突
import yitian as ytmain_actor = '周游' print(yt.main_actor) # 张无忌 print(main_actor) # 周游
def change():global fan_main_actressfan_main_actress = '张美欣'
jingyong1.py
import yitian as yt yt.fan_main_actress = '周星娜'
jingyong.py
import yitian as yt import jingyong1print(yt.fan_main_actress) # 周星娜
1
2
3
|
print (__name__)
# 结果为__main__
|
在jinyong.py中
1
2
3
4
5
|
import jinyong1
print (__name__)
结果为 jinyong1
|
import yitian as yt # 导入yitian,但是名字被重命名为yt,就好比变量赋值一样 a = 1 b = ayt.shaoli_war() # 此时可以正常运行print(globals()){'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000002CC30D7C1D0>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'F:/python_workspace_hxt/day24 内置模块 re/practice24.py', '__cached__': None, 're': <module 're' from 'C:\\Users\\huxia\\AppData\\Local\\Programs\\Python\\Python36\\lib\\re.py'>, 'sys': <module 'sys' (built-in)>, 'yt': <module 'yitian' from 'F:\\python_workspace_hxt\\day24 内置模块 re\\yitian.py'>}
一次也可以导入多个模块
1
|
import time,random,json,yitian
|
# haha.py __all__ = ["money", "eat"] money = 100 def eat(): print("我是吃") def drink(): print("我是呵呵")# test.py from haha import * eat() print(money) drink() # 报错
转载于:https://www.cnblogs.com/yanghongtao/p/10208962.html
day 25 模块与包相关推荐
- python之路---25 模块和包
一.模块 1.导入方式 自己创建的模块名称 切不可和 内置模块的一样 ① import 模块 ② import 模块 as 名 设置在此空间的名称 ③ from 模块 import ...
- 25 Python之模块与包
一.模块 模块就是一个包含了python定义和申明的文件,文件名就是模块的名字加上.py的后缀/ 模块的分类: 1.使用python编写的py文件 2.已被编译位共享库或者DLL或C或者C++的扩展 ...
- python之路——模块和包
一.模块 1.什么是模块? 常见的场景:一个模块就是一个包含了Python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1.使用Python编 ...
- python-学习 协程函数 模块与包
一.协程函数 yield的用法: 1:把函数的执行结果封装好__iter__和__next__,即得到一个迭代器2:与return功能类似,都可以返回值,但不同的是,return只能返回一次值,而yi ...
- python基础---模块与包
1.模块导入方法 常见的场景: 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀,导入模块可以实现功能的重复利用 import加载的模块分为四个通用类别: 1 使 ...
- Python 中的黑暗角落(三):模块与包
如果你用过 Python,那么你一定用过 import 关键字加载过各式各样的模块.但你是否熟悉 Python 中的模块与包的概念呢?或者,以下几个问题,你是否有明确的答案? 什么是模块?什么又是包? ...
- python - 啃书 第七章 模块、包和库 (一)
概述 在Python中,一个模块(Module)是一个以.py结尾的Python文件,包含了Python对象和语句. 在python中,一切皆对象.数字.字符串.元组.列表.字典.函数.方法.类.模块 ...
- python 必备模块和包_量化金融分析师(AQF)|这45道Python面试题都对你非常有帮助!(二)...
量化金融分析师(AQF)|这45道Python面试题都对你非常有帮助!(二) 21)如何在Python中复制对象? 要在Python中复制对象,可以尝试copy.copy()或copy.deepcop ...
- python笔记6 模块与包 程序开发规范 包 re sys time os模块
模块与包 python 模块首引用加载到内存,如果再次引用此模块,直接从内存中读取. python文件分为:执行文件(解释器运行的文件),被引用文件(import) 模块引用一共发生了3件事: 1.他 ...
最新文章
- shell编程--case判断
- 雷电2接口_地表最强?代替电脑的所有接口,雷电3或有望一统接口江湖
- 为什么我从Python转战到Node.js
- Re_Write序列号
- winform数据传递到html,C#下winform和JS的互相调用和传参(webbrowser)
- mysql inputoutput_PHP:同时使用INPUT和OUTPUT参数(不“ INOUT”)调用MySQL存储过程
- iOS之Cocoapods安装
- CentOS 7.6虚拟机ping: www.baidu.com: Name or service not known
- 在Ubuntu系统中安装字体(以安装华文行楷和方正舒体为例)
- 将txt文件编码改为utf-8格式
- YOLOV5训练数据(火焰检测)
- 【自动控制原理】渐进稳定与临界稳定的区别与联系
- Math.round(-1.5) 等于多少
- Datablau产品之Kubernetes(K8S)部署
- php pdo函数说明,PHP PDO函数库详解,pdo函数库详解
- openstack上 的云主机手动疏散案例
- 魔兽怀旧卓越服务器微信,《魔兽世界》怀旧服火爆超预期,部分服务器排队简直可怕...
- html div背景图片路径,css如何设置背景图片位置?
- Javaweb笔记: 第02章_MySQL基础
- MODEL COMPRESSION VIA DISTILLATION AND QUANTIZATION