我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python 模块

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python 模块

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目录,加入到环境变量中(推荐,这个后续会讲到)

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python 模块

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

下载Word文档

猜你喜欢

python模块:smtplib模块

1.使用本地的sendmail协议进行邮件发送格式(1):smtpObj=smtplib.SMTP([host [,port [,local_hostname]]])host:SMTP服务器主机的IP地址或者是域名port:服务的端口号(默
2023-01-31

Python模块:time模块

time模块:python中处理时间的基础模块,有时间戳,元组,自定义,三种时间表现形式。python中时间戳的值是以1970年1月1日0点开始计算的,单位是秒。时间戳:就是两个时间差的数值。时区:传说中在开发服务器/客户端程序时,时区不一
2023-01-31

使用Python模块:struct模块

Python没有提供直接的将用户定义的数据类型和文件IO关联起来的功能,但是它提供了struct库(是一个内置库)——我们可以以二进制模式来写这些数据(有趣的是,它真的是设计来讲文本数据写为缓存的)1)bytes、strbytes是Pyth
2023-01-31

Python模块

初步认识安装完python后,python自带一部分模块,自带的模块又称作内置模块。其中一部分模块在路径Lib下。(这里的文件夹可以看做包,可以把多个模块放进一个包里)从模块的来源来讲,可以分三种:内置模块、自定义模块(自己定义的)、第三方
2023-01-30

python-模块

一:模块的基本认识:内置模块内置模块是python自带的功能,在使用内置模块相应功能时,需要先导入再使用   第三方模块下载-->安装-->使用1.找到python所在的根目录-->再找到Scripts目录-->最后找到pip.exe2.把
2023-01-31

python - 模块

参考:https://www.cnblogs.com/nulige/p/6166205.html一、模块介绍Python Module(模块),就是一个保存了Python代码的文件。模块能定义函数,类和变量。模块里也能包含可执行的代码。文件
2023-01-31

python模块学习----nmap模块

安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理
2023-01-31

python 模块

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

python加密模块-hashlib模块

hashlib模块用于加密相关的操作,3.X里代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法(sha比md5 更复杂、md5 不能反解)具体应用:用于网站防篡改。具体方法:
2023-01-31

Python模块学习之IPy模块

IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第三
2023-01-31

【Python模块】Python UUI

uuid是128位的全局唯一标识符(univeral unique identifier),通常用32位的一个字符串的形式来表现。有时也称guid(global unique identifier)。python中自带了uuid模块来进行u
2023-01-31

Python logging模块

logging模块是Python的一个标准库模块,开发过程中,可以通过该模块,灵活的完成日志的记录。logging模块提供了两种记录日志的方式:    1)使用logging提供的模块级别的函数(logging.basicConfig,lo
2023-01-31

python resource 模块

(只用于 Unix , 可选) resource 模块用于查询或修改当前系统资源限制设置. Example 12-10 展示了如何执行查询操作, Example 12-11 展示了如何执行修改操作Example 12-10. 使用 reso
2023-01-31

python os.path模块

join:连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串os.path.join():  将多个路径组合后返回一、函数说明1.join()函数语法:‘sep’.join(seq)参数说明:sep:分
2023-01-31

python模块--collection

python的内建模块collections有几个关键的数据结构,平常在使用的时候,开发者可以直接调用,不需要自己重复制造轮子,这样可以提高开发效率。 1. deque双端队列平常我们使用的python内置list类的append,exte
2023-01-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录