广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python 模块
  • 859
分享到

python 模块

模块python 2023-01-30 21:01:51 859人浏览 泡泡鱼

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

摘要

python的模块分为2种:1.标准库(不需要安装,直接导入就可以使用的)2.第三方库(必须要手动安装的)先来介绍2个标准库:sys和os#!/usr/bin/env Python# coding: utf-8

python的模块分为2种:

1.标准库(不需要安装,直接导入就可以使用的)

2.第三方库(必须要手动安装的)


先来介绍2个标准库:sys和os

#!/usr/bin/env Python
coding: utf-8
__author__ = 'www.py3study.com'

import sys
#打印环境变量
print(sys.path)

执行结果如下:

['E:\\python_script', 'E:\\python_script', 'C:\\Program Files\\python36\\python36.zip', 'C:\\Program Files\\Python36\\DLLs', 'C:\\Program Files\\Python36\\lib', 'C:\\Program Files\\Python36', 'C:\\Program Files\\Python36\\lib\\site-packages']

这打印的,就是python的全局环境变量。这里面都是路径,路径里面存的都是什么呢?就是python导入一个库或者python内部自己进行调用的时候,它就在这些路径里面去找。

比如导入一个模块sys,那么sys模块必须在这些目录之中,至少存在一个目录里面。如果不存在,就会提示找不到该模块。

存在,就直接加载进来。

python标准库在 python安装路径\lib目录下,里面有N多.py结尾的文件,比如re模块,就是re.py


python第3方库一般存在 python安装路径\lib\site-packages 比如:

C:\Program Files\Python36\Lib\site-packages

比如Django,会存在这个目录里面。

我安装的是最新版DjanGo,截图如下:

blob.png

sys.argv是用来获取命令行参数的,

直接输出sys.argv

print(sys.argv)

结果如下:

['E:/python_script/a.py']

PyCharm里面执行,它会输出绝对路径。

在cmd里面,进入脚本目录,再次执行。它输出的是相对路径

blob.png

接收3个变量

e:\python_script>python a.py zhang li wang
['a.py', 'zhang', 'li', 'wang']

输出的结果是一个列表,列表的概念,后续会讲到。

服务器有些脚本,执行的时候,需要加参数。那么就需要用sys.argv来接收参数,程序做判断就可以了。


sys.argv[]是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始。

比如想输出li

代码改成如下:

print(sys.argv[2])

在cmd里面执行

e:\python_script>python a.py zhang li wang
li

sys模块暂时先讲到这里,下面来讲os模块


os模块主要是操作系统相关的,比如查看系统负载状态,磁盘,创建文件。。。。

__author__ os
os.system

执行结果如下:

blob.png

把dir执行的结果赋值给一个变量,输出时,带一个标记。代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

import os

#执行命令,不保存结果
cmd_res = os.system("dir")
print("-->",cmd_res)

执行结果如下:

blob.png

可以看出结果是0

为什么是0呢?而不是文件列表呢?

os.system在执行的时候,是直接输出到屏幕了。

执行成功返回0,失败返回1。


如果想要输出文件列表,怎么办呢?

需要用到os.popen

os.popen() 方法用于从一个命令打开一个管道。

执行的结果是一个对象,存储在内存中。需要用read()才能读取,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

import os

cmd_res = os.popen("dir").read()
print("-->",cmd_res)

执行结果如下:

blob.png


创建一个文件夹new_dir,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

import os

os.mkdir("new_dir")

执行之后,在Pycharm编辑器左上角,会出现一个目录

blob.png


导入自定义的模块

这里介绍一个,最简单的用户登录模块

在同级目录下,创建文件login.py,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

import getpass

_username = "xiao"
_passWord = "xiao123"
username = input("username:")
#password = getpass.getpass("password:")
password = input("password:")
print(username,password)

if _username == username and _password == password:
    print("Welcome user {name} login...".fORMat(name=username))
else:
    print("Invalid username or password!")

创建文件a.py,代码如下:

import login

执行文件a.py,效果如下:

blob.png

注意:

在同级目录下,直接import 文件名,去掉后缀.py。就可以实现自定义的模块调用了。


现在我把login.py移动到new_dir目录下

再次运行a.py,就会报错

ModuleNotFoundError: No module named 'login'

首先,python 导入模块的时候,优先从当前目录中寻找文件login.py。如果不存在,会在环境变量中的文件中搜索。最后发现不存在时,提示 No module


这个问题,有3个解决办法:

1.把模块放到同级目录(不推荐)

2.把模块放到环境变量的其中一个目录(不推荐)

3.把new_dir目录,加入到环境变量中(推荐,这个后续会讲到)

--结束END--

本文标题: python 模块

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python模块:smtplib模块
    1.使用本地的sendmail协议进行邮件发送格式(1):smtpObj=smtplib.SMTP([host [,port [,local_hostname]]])host:SMTP服务器主机的IP地址或者是域名port:服务的端口号(默...
    99+
    2023-01-31
    模块 python smtplib
  • Python模块:time模块
    time模块:python中处理时间的基础模块,有时间戳,元组,自定义,三种时间表现形式。python中时间戳的值是以1970年1月1日0点开始计算的,单位是秒。时间戳:就是两个时间差的数值。时区:传说中在开发服务器/客户端程序时,时区不一...
    99+
    2023-01-31
    模块 Python time
  • 使用Python模块:struct模块
    Python没有提供直接的将用户定义的数据类型和文件IO关联起来的功能,但是它提供了struct库(是一个内置库)——我们可以以二进制模式来写这些数据(有趣的是,它真的是设计来讲文本数据写为缓存的) 1)bytes、str...
    99+
    2023-01-31
    模块 Python struct
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • python加密模块-hashlib模块
    hashlib模块 用于加密相关的操作,3.X里代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法 (sha比md5 更复杂、md5 不能反解) 具体应用:用于网站防篡改。具...
    99+
    2023-01-31
    模块 python hashlib
  • Python模块
    初步认识 安装完python后,python自带一部分模块,自带的模块又称作内置模块。其中一部分模块在路径Lib下。(这里的文件夹可以看做包,可以把多个模块放进一个包里) 从模块的来源来讲,可以分三种:内置模块、自定义模块(自己定义的)...
    99+
    2023-01-30
    模块 Python
  • python - 模块
    参考:https://www.cnblogs.com/nulige/p/6166205.html一、模块介绍Python Module(模块),就是一个保存了Python代码的文件。模块能定义函数,类和变量。模块里也能包含可执行的代码。文件...
    99+
    2023-01-31
    模块 python
  • python 模块
    python的模块分为2种:1.标准库(不需要安装,直接导入就可以使用的)2.第三方库(必须要手动安装的)先来介绍2个标准库:sys和os#!/usr/bin/env python# coding: utf-8...
    99+
    2023-01-30
    模块 python
  • python-模块
    一:模块的基本认识: 内置模块 内置模块是python自带的功能,在使用内置模块相应功能时,需要先导入再使用    第三方模块 下载-->安装-->使用 1.找到python所在的根目录-->再找到Scrip...
    99+
    2023-01-31
    模块 python
  • Python基础之hashlib模块subprocess模块logging模块
    目录一、hashlib模块基本操作与用法二、subprocess模块简介基本操作与用法三、logging模块简介基本操作与用法一、hashlib模块 什么是哈希模块: hashlib...
    99+
    2022-11-11
  • Python中的sys模块、random模块和math模块
    一、sys运行时环境模块 sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。 用法: sys.argv:命令行参数List,第...
    99+
    2022-11-11
  • python常见模块之OS模块和time模块
    一、OS模块概述 Python OS模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。 二、常用方法 三、OS模...
    99+
    2022-11-12
  • Python时间模块之datetime模块
    目录 简介 函数介绍及运用 date:日期类 1.获取当前时间  2.日期对象的属性 3.date类中时间和时间戳的转换: 4.修改日期使用replace方法  time:时间类  time类操作 datetime:日期时间类 timede...
    99+
    2023-09-12
    python datetime python 日期时间
  • python数学模块(math/decimal模块)
    目录一, math模块2. math库常用函数3.math库使用示例二, decimal模块1. 什么时候使用decimal2. 使用decimal3. decimal使用示例一, ...
    99+
    2022-11-11
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
  • 【Python模块】Python UUI
    uuid是128位的全局唯一标识符(univeral unique identifier),通常用32位的一个字符串的形式来表现。有时也称guid(global unique identifier)。python中自带了uuid模块来进行u...
    99+
    2023-01-31
    模块 Python UUI
  • 【python】redis模块
    单线程,通过epoll实现高并发,端口6379linux下载地址:http://redis.io/downloadwindows下载地址:https://github.com/MSOpenTech/redis/releases 本文介绍的内...
    99+
    2023-01-31
    模块 python redis
  • Python: httplib2模块
    [+]   httplib2功能介绍:http://code.google.com/p/httplib2/ httplib2实例页面:http://code.google.com/p/httplib2/w/list httplib2问题...
    99+
    2023-01-31
    模块 Python
  • python MySQLdb 模块
      用python操作mysql数据库,就会用到MySQLdb模块,这个模块其实和文件数据库SQLite的操作方式一样的先来看一下这模块的简单实用插入数据import MySQLdb #创建一个mysql的连接对象   conn = MyS...
    99+
    2023-01-31
    模块 python MySQLdb
  • python getopt模块
     getopt模块用于抽出命令行选项和参数,也就是sys.argv。命令行选项使得程序的参数更加灵活。支持短选项模式和长选项模式。     e.g. python scriptname.py -f 'hello' --directory-p...
    99+
    2023-01-31
    模块 python getopt
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作