返回顶部
首页 > 资讯 > 后端开发 > Python >【Python学习 】Python的模块或py文件导入
  • 314
分享到

【Python学习 】Python的模块或py文件导入

学习python 2023-10-24 05:10:36 314人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录 一、前言 二、python项目中导入模块(py文件)的几种方式 1、直接将py文件放到默认的库位置(特点:高效) 2、将文件放到创建的库位置(特点:方便管理) 3、将模块(模块包含很多py文件)使用pip安装到python库中(特点:

目录

一、前言

二、python项目中导入模块(py文件)的几种方式

1、直接将py文件放到默认的库位置(特点:高效)

2、将文件放到创建的库位置(特点:方便管理)

3、将模块(模块包含很多py文件)使用pip安装到python库中(特点:安装麻烦,使用时方便)

4、使用系统变量永久生成指定python库位置(特点:没有缺点,哈哈,推荐这个)

三、项目中的python文件导入

1、同级文件导入

2、导入文件夹中py文件


一、前言

       听说python很流行,因为有很多模块资源,而且导入模块,操作和理解起来很简单。所以在这里记录一下学习Python的过程,我相信最重要的环节就是导入第三方模块了

二、python项目中导入模块(py文件)的几种方式

1、直接将py文件放到默认的库位置(特点:高效)

在本地路径:d:\\Z_D\\PD_P\\Python\\项目1目录下运行 test.py 文件代码如下:

import sysprint(sys.path)

运行结果就是打印出所有默认的库文件存放路径: 

['d:\\Z_D\\PD_P\\Python\\项目1', 'D:\\Z_D\\PD\\python\\python310\\python310.zip', 'D:\\Z_D\\PD\\python\\Python310\\DLLs', 'D:\\Z_D\\PD\\python\\Python310\\lib', 'D:\\Z_D\\PD\\python\\Python310', 'D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages']

 整理一下就是

d:\\Z_D\\PD_P\\Python\\项目1

D:\\Z_D\\PD\\python\\Python310\\python310.zip

D:\\Z_D\\PD\\python\\Python310\\DLLs

D:\\Z_D\\PD\\python\\Python310\\lib

D:\\Z_D\\PD\\python\\Python310

D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages

把创建的 my1.py 文件放在 D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages 中:这里 my1.py 文件演示的代码如下:

def testfunction():    print("我是 D:\Z_D\PD\python\Python310\Lib\\\        site-packages 的 my1.py \        中的 testfunction 函数")

然后执行 test.py 文件的测试代码。尝试导入 my1.py 文件:

import my1my1.testfunction()

可以看到执行结果(图片):

 导入成功!

2、将文件放到创建的库位置(特点:方便管理)

上面讲到我们可以直接把py文件放置到D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages 路径下,但是这么做,显得很乱,也不便于我们管理,所以我们创建一个文件夹,用于放置自己的创建的py文件模块:

把创建的 my2.py 文件放在D:\桌面\自己创建的库文件夹 中:这里 my2.py 文件演示的代码如下:

def testfunction():    print("D:\桌面\自己创建的库文件夹\my2.py中的 testfunction 函数")

然后执行 test.py 文件的测试代码。尝试导入 my2.py 文件:

import syssys.path.append('D:\桌面\自己创建的库文件夹')import my2my2.testfunction()

可以看到执行结果(图片):

  导入成功!

3、将模块(模块包含很多py文件)使用pip安装到python库中(特点:安装麻烦,使用时方便)

创建一个工作区,工作区下新建一个 ShareClass 文件夹 ,文件夹中新建 helloworld.py 文件 和一个空白 __init__.py 文件

编写自己的模块代码,这里 helloworld.py 文件演示代码如下:

def testfunction():    print("helloworld.py的 testfunction 函数")

效果是这样:

 在工作区下新建一个setup.py文件,注意该文件是和ShareClass文件夹 同级目录

这里的 setup.py文件代码如下:

import setuptoolssetuptools.setup(    name="ShareClass",    version="1.0",    author="Beall",    author_email="beallhuang@163.com",    description="",    long_description="ShareClass",    long_description_content_type="ShareClass",    packages=setuptools.find_packages(),    classifiers=[        "Programming Language :: Python :: 3",        "License :: OSI Approved :: MIT License",        "Operating System :: OS Independent",    ],)

这里用到了 setuptools 模块,如果没有,要进行安装,安装方法自行百度。

效果是这样:

接下来,我们进行pip安装流程:

在工作区使用终端执行命令,使用setup.py脚本生成压缩包

python .\setup.py sdist  

执行的结果就是生成了两个文件夹:

然后执行命令,使用pip安装到本地库中:

pip install .\dist\ShareClass-1.0.tar.gz

 执行结果就是安装成功:

然后执行文件 test.py 的测试代码。尝试导入模块ShareClass中的helloworld.py

from ShareClass import helloworld helloworld.testfunction()

可以看到执行结果(图片):

  创建模块,安装,并在项目中导入成功!

4、使用系统变量永久生成指定python库位置(特点:没有缺点,哈哈,推荐这个)

上面第一种方式,放在系统目录不方便管理,文件类型多,目录深,所以找起来很不方便

第二种方式,放在指定位置,确实简单,但是使用时,要额外加入下面的代码

import syssys.path.append('D:\桌面\自己创建的库文件夹')

对于有代码洁癖的人来,十分别扭。

第三种方式,将模块打包安装,虽然使用起来和第二种相同,也没有别扭的感觉,但是每次都要安装,这样模块多了就很麻烦,也很不好管理

所以推荐方式4,相当于在方式二的基础上升级了一下。废话不多说了,直接操作:

如下图,我的电脑,右键属性=》高级系统设置=》环境变量=>新建,填的内容如下,变量名一定要填写正确,建议复制!

PYTHONPATH

D:\桌面\永久的py库文件夹

然后检查是否添加成功,效果如下图

 

 运行一下,测试代码如下:

import my4my4.myfunction()

如果是在vscode中。运行后结果如下:

 

遇到这个问题,是VScode问题,这个不重要,要解决很简单:重启

不过这里就不要是重启了。在项目目录打开CMD运行指令:python test.py

运行结果如下:

 导入成功!

三、项目中的python文件导入

1、同级文件导入

同级目录创建my.py 文件:这里 my.py 文件演示的代码如下:

def myfunction():    print("helloworld.py的 myfunction 函数")

然后执行 test.py 文件的测试代码。尝试导入 my2.py 文件:

import mymy.myfunction()

可以看到执行结果(图片):

导入成功!

2、导入文件夹中py文件

同级目录创建my.py 文件:这里 my.py 文件演示的代码如下:

def myfunction():    print("my.py的 myfunction 函数")

========================================================================= 

然后执行 test.py 文件的测试代码。尝试导入 my2.py 文件:

#导入my文件import 文件夹.my as mymy.myfunction()

或者:

#导入my文件from 文件夹 import mymy.myfunction()

或者

#导入my文件中所有的函数from 文件夹.my import *myfunction()

或者

#仅仅导入my文件中的myfunction函数from 文件夹.my import myfunctionmyfunction()

========================================================================= 

可以看到执行结果(图片):

导入成功!

来源地址:https://blog.csdn.net/qq_40903527/article/details/127708087

--结束END--

本文标题: 【Python学习 】Python的模块或py文件导入

本文链接: https://lsjlt.com/news/440955.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【Python学习 】Python的模块或py文件导入
    目录 一、前言 二、python项目中导入模块(py文件)的几种方式 1、直接将py文件放到默认的库位置(特点:高效) 2、将文件放到创建的库位置(特点:方便管理) 3、将模块(模块包含很多py文件)使用pip安装到python库中(特点:...
    99+
    2023-10-24
    学习 python
  • python引入其他py文件或模块
    以 a.py 想引入 b.py 为例: 1、b.py 与 a.py 在同一目录下: import b 2、b.py 在某文件夹内,目录结构类似如下: filename1----fi...
    99+
    2023-01-06
    python引入py文件 python 引用其他目录py文件
  • 图文详解Python中模块或py文件导入(超详细!)
    目录一、前言二、python项目中导入模块(py文件)的几种方式1、直接将py文件放到默认的库位置(特点:高效)2、将文件放到创建的库位置(特点:方便管理)3、将模块(模块包含很多p...
    99+
    2023-05-16
    Python模块或py文件导入 python如何导入py文件 python怎么导入自己写的模块
  • Python struct模块-深入学习
    Python struct模块 用处struct模块中的函数格式化字符串 对齐方式格式符code使用示例Python参考手册struct模块链接 转载请标明出处(http://blog.csdn.net/lis_12/a...
    99+
    2023-01-31
    模块 Python struct
  • 学习python的第十八天(模块导入及使
    一.模块导入及使用 1.模块导入的两种方式 我们拿time模块并使用其中的time功能进行举例 a)第一种 import time print(time.time) import首次导入模块发生了3件事: 打开模块文件 执行模块对应的...
    99+
    2023-01-31
    模块 python
  • Python 模块学习
        模块学习: http://wsyht90.blog.51cto.com/9014030/1845737 1、getpass 2、os 3、sys 4、subprocess 5、hashlib 6、json 7、pickle 8、sh...
    99+
    2023-01-31
    模块 Python
  • python模块学习
    系统相关的信息模块: import sys sys.argv 是一个 list,包含所有的命令行参数. sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象. sys.st...
    99+
    2023-01-31
    模块 python
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • python模块导入
    [seemmo@RegionServer1 duwen]$ pythonPython 2.6.6 (r266:84292, Nov 22 2013, 12:16:22) [GCC 4.4.7 20120313 (Red Hat 4.4.7-...
    99+
    2023-01-31
    模块 python
  • 深入学习:Python中读取.py文件的实用技巧
    在python中读取.py文件的方法包括:使用open()函数打开文件并读取内容。使用importlib.machinery加载脚本文件并获取其代码对象。 深入学习:Python中读取...
    99+
    2024-04-04
    python 文件处理 python脚本
  • python模块学习(queue模块的Q
    学习版本3.5.2 PriorityQueue类和LifoQueue类继承Queue类然后重写了_init、_qsize、_put、_get这四个类的私有方法 Queue:先进先出队列的同步实现,通过双向列表实现的 # Initi...
    99+
    2023-01-31
    模块 python queue
  • python怎么导入自定义的py文件
    要导入自定义的.py文件,需要将自定义的.py文件放在与主程序相同的目录下,然后使用import语句导入该文件。例如,如果自定义的....
    99+
    2024-03-12
    python
  • Python wmi 模块的学习
    # -*- coding:utf-8 -*- import datetime import os import wmi import time import _winreg import pythoncom import threadin...
    99+
    2023-01-31
    模块 Python wmi
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
  • python hashlib模块学习
    目录 hashlib 模块 破解密码 hmac 模块 1.干嘛用的: 对字符进行加密,其实就是一个自定义的字符编码表,...
    99+
    2023-01-31
    模块 python hashlib
  • python模块学习(1)
    模块让你能够有逻辑地组织你的Python代码段。把相关的代码分配到一个 模块里能让你的代码更好用,更易懂。模块也是Python对象,具有随机的名字属性用来绑定或引用。简单地说,模块就是一个保存了Python代码的文件。模块能定义函数,类和变...
    99+
    2023-01-31
    模块 python
  • python学习-re模块
    Python 的 re 模块(Regular Expression 正则表达式)提供各种正则表达式的匹配操作,在文本解析、复杂字符串分析和信息提取时是一个非常有用的工具,下面我主要总结了re的常用方法。1.re的简介    使用python...
    99+
    2023-01-31
    模块 python
  • Python学习-pycurl模块
    pycurl是一个用c语言编写的libcurl Python实现,功能非常强大,支持操作协议有FTP,HTTP,HTTPS,TELNET等。模块的常用方法说明:close()方法,对应libcurl包中的curl_easy_cleanup方...
    99+
    2023-01-31
    模块 Python pycurl
  • python optparse模块学习
    本文参考:http://docs.python.org/2/library/optparse.htmlPython 有两个内建的模块用于处理命令行参数:一个是 getopt,getopt只能简单处理 命令行参数。另一个是 optparse,...
    99+
    2023-01-31
    模块 python optparse
  • Python pycurl模块 学习
    pycurl模块的安装方法如下: easy_install pycurl #easy_install安装方法 pip install pycurl #pip安装方法 #源码安装方法 # 要求curl-config包支持,需要源码方式重新安...
    99+
    2023-01-31
    模块 Python pycurl
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作