python包结构模块如何有效传递数据?

变量传值(函数参数、全局变量、模块属性),类对象封装传值,最终却发现python中都是"对象传值"。


(笔记模板由python脚本于2024年10月26日 19:21:43创建,本篇笔记适合熟悉python,喜欢编的coder翻阅)


【学习的细节是欢悦的历程】



**  自学并不是什么神秘的东西** ,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。

            ------ 华罗庚




函数全局模块属性类对象封装 包结构模块数据传递 (最终却发现python中都是"对象传值")



本文质量分:
97 97 97
本文地址: https://blog.csdn.net/m0_57158496/article/details/143258253

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ python包结构模块如何有效传递数据?
    • 1、包模块数据传递的一般形式
    • 2、"属性传值"的简单试炼
    • 3、包目录中的__init__.py
    • 4、包"管家"all=\[\]
      • 4.1 定义包公共接口API
      • 4.2 "偷偷掀起红盖头"
    • 5、python"欲拒还迎"的哲学
    • 6、"浓缩"传值"类型"
      • 6.1 变量/对象传值
      • 6.2 类,它"不传值"
      • 6.3 Python传值的仅"对象"尔!
    • 7、"陷阱"/"邪法"/高手
    • 8、ai通常"会"收集和整理"知识点"

◆ python包结构模块如何有效传递数据?

  变量传值(函数参数、全局变量、模块属性),类对象封装传值,最终却发现python中都是"对象传值"。

1、包模块数据传递的一般形式

  • 数据传递

回页目录


2、"属性传值"的简单试炼

  函数参数、全局变量(含隐形全局变量,即不用"明文"申明的"全局变量",如list、dict、set等可变对象,只要在最顶层作用域定义,它就是"全局变量"。😋),我都已能熟练操控。😎我要加习的就是包目录结构中的*.py模块间的数据交流。

a.py中有定义:

python 复制代码
MY_NAME = '梦幻精灵_cq'

我就可以

python 复制代码
import a


print(f"\n\n我是{a.MY_NAME},欢迎您来到我的学习笔记现场。\n") 

🤗🤗🤗

💪💪💪

  • 来自ai学伴的鼓励

回页目录


3、包目录中的__init__.py

  • 截屏图片

回页目录


4、包"管家"all=\[\]

4.1 定义包公共接口API

  • 截屏图片

4.2 "偷偷掀起红盖头"

  • 截屏图片

回页目录


5、python"欲拒还迎"的哲学

  • 与ai学伴对话截屏

Python之禅原文
python.this

python 复制代码
>>> import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
>>>

回页目录


6、"浓缩"传值"类型"

  函数参数传值、全局变量传值、模块属性传值、 类和对象传值,python中这看似四类传值方式,实则可说是变量传值和对象传值两种方式,因为我认为函数参数、全局变量、模块属性都是"变量"。😎😎

6.1 变量/对象传值

  • ai学伴说

6.2 类,它"不传值"

  • 为"类传值"正名

6.3 Python传值的仅"对象"尔!

  • 对象传值

回页目录


7、"陷阱"/"邪法"/高手

  • 对话截屏

回页目录


8、ai通常"会"收集和整理"知识点"

  • 对话截屏

回页首


上一篇:  与ai聊我的代码架构(以包目录结构模块,以*.py脚本收纳模块)
下一篇: 


我的HOT博:

  本次共计收集 311 篇博文笔记信息,总阅读量43.82w。数据于2024年03月22日 00:50:22完成采集,用时6分2.71秒。阅读量不小于6.00k 的有 7 7 7篇。


推荐条件 阅读量突破6.00k (更多热博,请点击蓝色文字跳转翻阅)


  • 截屏图片

      (此文涉及ChatPT,曾被csdn多次下架,前几日又因新发笔记被误杀而落马。躺"未过审"还不如回收站,回收站还不如永久不见。😪值此年底清扫,果断移除。留此截图,以识"曾经"。2023-12-31)

回页首


精品文章:

来源:老齐教室


Python 入门指南【Python 3.6.3】


好文力荐:


CSDN实用技巧博文:


相关推荐
兵慌码乱11 小时前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
luckdewei13 小时前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi0020 小时前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn20 小时前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
金銀銅鐵2 天前
[Python] 从《千字文》中随机挑选汉字
后端·python
cup112 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill
aqi002 天前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵2 天前
用 Python 实现 Take-Away 游戏
python·游戏