python -- 模块与类库
一、模块
模块(Module)是由一组类、函数和变量组成的,模块文件的扩展名是.py或.pyc
在使用模块之前,需要先使用import语句导入这个模块。
语法格式如下:
import 模块名
from 模块 import 方法(变量)名1......
from .... import 语句允许我们只导入模块的一部分,如导入某个具体的类、方法或变量。
当使用import语句加载模块时,模块内的程序代码会立即被执行。
使用from .... import 语句只导入我们需要的部分内容,能极大的提高空间的使用效率。
二、类库
类库(Package)也称为包,是由相同文件夹下的一组模块组成,类库的使用方法和模块的方法类似;
唯一需要注意的是,将文件夹当做类库使用时,文件夹中必须包含__init__.py文件,主要为了避免文件夹名当做普通的字符串使用
语法格式如下:
import 类库
import 类库.模块
from 类库.模块 import 方法/(变量)
from 类库 import 模块
import math # 导入一个模块
import os, sys # 导入多个模块
import datetime
from datetime import date # 导入模块中某个具体的类
from math import pi # 导入模块中某个变量
# import ch08_2
import xml
# import xml.sax # 需要使用全名去访问
# from xml import sax
# from xml import *
# from xml.sax.handler import version
a = 1024
print("a的平方根为:", math.sqrt(a)) # 求平方根
print(pi)
print("当前工作平台:", os.name) # 'nt': Windows 'posix': Linux/Unix
print("当前系统平台:", sys.platform)
print("今天的日期:", datetime.date.today())
print("今天的日期:", date.today())
ver = xml.sax.handler.version
print("版本号:", ver)
import datetime as dt # 给模块取个别名
from datetime import date as newdate # 给模块中的类/方法/变量取别名
import math
print("今天的日期:", dt.date.today())
print("今天的日期:", newdate.today())
today = dt.date.today
print("今天的日期:", today())
new_math = math
print(new_math.pi)
# 模块的内置方法
# __dict__:显示模块的字典
print("__dict__:", dt.__dict__)
# __doc__:显示模块的文件字符串
print("__doc__:", dt.__doc__)
# __name__:显示模块的名称,用来标识命名空间
print("__name__:", dt.__name__)
# 一个模块被另一个程序第一次导入时,其主程序会被执行
print('__name__:', __name__)
if __name__ == '__main__':
print('该模块自身在运行')
else:
print('该模块被导入另一个程序时被运行')
# __file__:显示模块的完整文件路径
print("__file__:", dt.__file__)
# del:删除已加载的模块(从内存中清除)
del dt
python -- 模块与类库的更多相关文章
- python之模块与类库
什么是模块 模块是一组类,函数,方法所组成的.这些类都储存在文本文件中..py是python程序代码中的扩展名,模块可能是c或者python写的.模块的扩展名可以是.py或者是.pyc(经过编译的.p ...
- python-学习笔记之-Day5 双层装饰器 字符串格式化 python模块 递归 生成器 迭代器 序列化
1.双层装饰器 #!/usr/bin/env python # -*- coding: utf-8 -*- # author:zml LOGIN_INFO = False IS_ADMIN = Fal ...
- python成长之路【第十八篇】:python模块介绍、模块导入和重载
一.模块和命名空间 一般来说,Python程序往往由多个模块文件构成,通过import语句连接在一起.每个模块文件是一个独立完备的变量包,即一个命名空间.一个模块文件不能看到其他文件定义的变量名,除非 ...
- python模块大全
python模块大全2018年01月25日 13:38:55 mcj1314bb 阅读数:3049 pymatgen multidict yarl regex gvar tifffile jupyte ...
- python- 双层装饰器 字符串格式化 python模块 递归 生成器 迭代器 序列化
1.双层装饰器 #!/usr/bin/env python3 # -*- coding: utf-8 -*- # author:zml LOGIN_INFO = False IS_ADMIN = Fa ...
- 分分钟钟学会Python - 模块
目录 模块 1 模块基础知识 2 random 返回随机生成的一个实数 3 hashlib 摘要算法模块 Hmac算法 4 time /datetime 时间模块 5 getpass 密码不显示(只能 ...
- 使用C/C++写Python模块
最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...
- Python模块之configpraser
Python模块之configpraser 一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...
- Python模块之"prettytable"
Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...
随机推荐
- TensorRT IRNNv2Layer
TensorRT IRNNv2Layer IRNNv2Layer层实现递归层,如递归神经网络(RNN).门控递归单元(GRU)和长短期记忆(LSTM).支持的类型有RNN.GRU和LSTM.它执行一个 ...
- 转置卷积Transposed Convolution
转置卷积Transposed Convolution 我们为卷积神经网络引入的层,包括卷积层和池层,通常会减小输入的宽度和高度,或者保持不变.然而,语义分割和生成对抗网络等应用程序需要预测每个像素的值 ...
- 使用有道云笔记还是github写笔记的优缺点对比
有道云笔记的优点 在手机上编辑笔记,有道云的体验更好,建议:新建普通类型笔记而不是markdown笔记,因为md在手机上的编辑体验并不好 插入图片方便无需考虑图床 可以把笔记分享到社交平台(QQ,微信 ...
- MySQL数据的高效检索
数据库操作中,常常需要完成既定数据的检索.少量数据存放在表中,只需使用基本的SQL语句即可检索得到.但当数据量较大时,受MySQL数据库底层实现原理的限制,缺省的SQL语句,检索效率较低. 例如:当执 ...
- 【题解】滑雪 luogu1434 记忆化搜索
记忆化搜索入门题 题目 Michael喜欢滑雪.这并不奇怪,因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Michael想知道在 ...
- VueJs(16)---Nuxt引入mavon-editor插件实现markdown功能
Vue引入mavon-editor插件实现markdown功能 说明 mavon-editor是一款基于Vue的markdown编辑器,因为当前项目是采用Nuxt,所以这里所展示的教程是针对Nuxt引 ...
- Mysql在线DDL
1. Mysql各版本DDL方式 1.1 MysqlDDL演进 当mysql某个业务表上有未提交的活动事务的时候,你去执行在线DDL,这相当危险,直接会被卡住,show processlist里面会 ...
- Visual Studio Code 和Visual Studio插件收集(持续更新)
Visual Studio Code 插件收集 Chinese (Simplified) Language Pack 默认刚安装的VSC是原味英文的,如果你用不习惯,非常简单,官方出品的简体中文语言包 ...
- 30、css介绍
30.1.css概述: css是Cascading Style Sheet的简称,中文称为层叠样式表,是用来控制网页数据表现的,可以 使网页的表现与数据内容分离: 30.2.css的四种引入方式: 1 ...
- 解决WebStorm开发vue提示Module is not installed、Unresolved variable or type
WebStorme2021.1版本: Setting->Languages->JavaScript->Webpack由原先的disable选为Automatically即可(右下角弹 ...