首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Python模块2】- 模块搜索顺序、内置属性、开发原则

一、模块的搜索顺序1》Python解释器在导入模块时,对模块文件的搜索顺序:搜索顺序:搜索当前目录指定模块名的文件,如果有就直接接导入如果没有,就会到系统目录搜索指定模块名的文件提醒:在开发时给文件起名...文件和模块同名报错验证:新建一个random.py文件和模块同名,可以看出PyCharm也给我们提示了(randinth函数有个灰色底纹),此时再来运行文件,报错2》 模块内置属性__file__Python...中,每一个模块都有一个内置属性__file__,这个内置属性可以查看模块的完整路径。...python文件就是一个模块在导入文件时,文件中所有没有任何缩进的代码都会被执行一遍代码验证:文件中所有没有任何缩进的代码都会被执行一遍md_模块文件代码:print("小夏开发的模块文件")md_测试导入文件代码...__name__是python的一个内置属性,记录着一个字符串(保存的是一个字符串)如果是被其他文件导入的,__name__就是模块名如果是当前执行的程序,__name__是__main__(永远是固定的

76720
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python __file__属性:查看模块的源文件路径

    前面章节提到,当指定模块(或包)没有说明文档时,仅通过 help() 函数或者 __doc__ 属性,无法有效帮助我们理解该模块(包)的具体功能。...在这种情况下,我们可以通过 __file__ 属性查找该模块(或包)文件所在的具体存储位置,直接查看其源代码。...仍以前面章节创建的 my_package 包为例,下面代码尝试使用 __file__ 属性获取该包的存储路径: import my_package print(my_package....__file__) 程序输出结果为: D:\python3.6\lib\string.py 由此,通过调用 __file__ 属性输出的绝对路径,我们可以很轻易地找到该模块(或包)的源文件。...注意,并不是所有模块都提供 __file__ 属性,因为并不是所有模块的实现都采用 Python 语言,有些模块采用的是其它编程语言(如 C 语言)。

    1.6K00

    【python】pyarrow.parquet+pandas:读取及使用parquet文件

    所需的库 import pyarrow.parquet as pq import pandas as pd pyarrow.parquet模块,可以读取和写入Parquet文件,以及进行一系列与Parquet...例如,可以使用该模块读取Parquet文件中的数据,并转换为pandas DataFrame来进行进一步的分析和处理。同时,也可以使用这个模块将DataFrame的数据保存为Parquet格式。...终端指令 conda create -n DL python==3.11 conda activate DL conda install pyarrow 或 pip install pyarrow 二、...pyarrow.parquet   当使用pyarrow.parquet模块时,通常的操作包括读取和写入Parquet文件,以及对Parquet文件中的数据进行操作和转换。...调试操作可参照:PyCharm基础调试功能详解 点击右侧蓝色的View as DataFrame   如图所示,feature在同一个格内,导出为: 注意看,省略号...位置真的就是省略号字符,没有数字

    52610

    详解Python中函数和模块的特殊属性__annotations__

    众所周知,Python是一种动态类型语言,也是强类型语言。在Python语言中,使用变量之前不需要声明其类型,直接赋值即可创建变量,变量初始类型取决于等号右侧表达式的值的类型。...在Python中,函数会维护一个特殊属性__annotations__,这是一个字典,其中的“键”是被注解的形参名,“值”为注解的内容。使用时并不要求注解的内容是Python中的类型,可以是任意内容。...Python函数有若干特殊属性,常用的几个如下图箭头所示,倒数第二个为__annotations__, ?...另外,在模块中也有个特殊属性__annotations__用于收集模块中变量的注解,但这些注解同样也不会创建对应的变量。例如,在下面的代码中,并没有创建变量e、f、g。 ?...Python官方文档对于模块特殊属性__annotations__的解释如下: ? 启动IDLE时,默认进入交互模式,是一个叫做__main__的命名空间,官方文档解释如下: ?

    2.3K20

    独家 | Pandas 2.0 数据科学家的游戏改变者(附链接)

    从本质上讲,Arrow 是一种标准化的内存中列式数据格式,具有适用于多种编程语言(C、C++、R、Python 等)的可用库。...对于Python,有PyArrow,它基于Arrow的C++实现,因此速度很快!...以下是使用Hacker News数据集(大约650 MB)读取没有pyarrow后端的数据与使用pyarrow后端读取数据之间的比较(许可证CC BY-NC-SA 4.0): %timeit df =...其他值得指出的方面: 如果没有 pyarrow 后端,每个列/特征都存储为自己的唯一数据类型:数字特征存储为 int64 或 float64,而字符串值存储为对象; 使用 pyarrow,所有功能都使用...同样,使用 pyarrow 引擎读取数据肯定更好,尽管创建数据配置文件在速度方面没有显著改变。 然而,差异可能取决于内存效率,为此我们必须进行不同的分析。

    44830

    基于PHP扩展Phpy实现Apache ORC高效读写,搞定大数据处理

    概述 用于读取和写入 Apache ORC 文件格式的 PHP 库。它使用 swoole/phpy 扩展来调用 Python 模块 PyORC 以实现相关功能。...开源技术小栈特性 读取 ORC 文件:PyORC 允许 Python 程序从 ORC 文件中读取数据。...它为 PHP 开发者提供了一种在 PHP 代码里调用 Python 模块和函数的能力,搭建起了 PHP 和 Python 这两种编程语言之间的桥梁,极大地扩展了 PHP 的功能边界。...开源技术小栈特性 无缝调用 Python 代码:借助 phpy 扩展,PHP 开发者能够在 PHP 脚本里直接调用 Python 编写的函数、类和模块。...Version => 3.12.8 (main, Dec 7 2024, 05:56:13) [GCC 14.2.0] 安装pyorc模块 通过.vendor/bin/php-orc install

    5500

    Spark Parquet详解

    ,也就是嵌套类型; hobby_name属于hobbies中元素的属性,必须有一个,类型为string; home_page属于hobbies中元素的属性,可以有一个也可以没有,类型为string;...Repetition level和Definition level是很重要的,这二者都存放于Row group的元数据中; 高效压缩:注意到每个Column都有一个type元数据,那么压缩算法可以通过这个属性来进行对应压缩...,另外元数据中的额外k/v对可以用于存放对应列的统计信息; Python导入导出Parquet格式文件 最后给出Python使用Pandas和pyspark两种方式对Parquet文件的操作Demo吧,...') 上述代码需要注意的是要单独安装pyarrow库,否则会报错,pandas是基于pyarrow对parquet进行支持的; PS:这里没有安装pyarrow,也没有指定engine的话,报错信息中说可以安装...,pyarrow就可以。。。。

    1.7K43

    python已安装了一个包,但是导入包中的模块时报错没有这个包

    执行import sys; print(sys.path)查看python搜索路径,确保自己的模块在python搜索路径中 python的搜索路径与包(package) python的搜索路径其实是一个列表...,它是指导入模块时,python会自动去找搜索这个列表当中的路径,如果路径中存在要导入的模块文件则导入成功,否则导入失败: >>> import sys >>> sys.path ['', 'C:\\Python33..., 'C:\\Python33\\Lib\\idlelib', 'C:\\Windows\\system32\\python33.zip', 'C:\\Python33\\DLLs', 'C:\\Python33...\\lib', 'C:\\Python33', 'C:\\Python33\\lib\\site-packages', 'E:\\python'] >>> 当安装第三方模块的时候,如果不是按照标准方式安装...,则为了能够引用(import)这些模块,必须将这些模块的安装路径添加到sys.path中,有以下几种方法: 最简单的方法:是在sys.path的某个目录下添加路径配置文件,最常见的就是在…/site-package

    5.7K10

    Mongodb数据库转换为表格文件的库

    依赖于快速 PyArrow mongo2file 依赖于 PyArrow 库。它是 C++ Arrow 的 Python 版本实现。...PyArrow 目前与 Python 3.7、3.8、3.9 和 3.10 兼容。...警告: PyArrow 目前只支持到 win64 位 ( Python 64bit ) 操作系统。...当没有多线程(当然这里的多线程并不是对同一文件进行并行操作,文件写入往往是线程不安全的)、 数据表查询语句无优化时,并且当数据达到一定量级时(比如 100w 行),单表单线程表现出来的效果真是让人窒息。...在 mongo2file 在进行大数据量导出时表现的并没有多么优秀。导致的主要原因可能是: 采用的 xlsxwriter 库写入 excel 时是积极加载(非惰性)的,数据全部加载至内存后插入表格。

    1.5K10
    领券