python函数模块名称 python在模块中定义函数
盘点Python常用的模块和包
模块
十载的固安网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整固安建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“固安网站设计”,“固安网站推广”以来,每个客户项目都认真落实执行。
1.定义
计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里。在python里,一个.py文件就是一个模块。
2.优点:
提高代码的可维护性。
提高代码的复用,当模块完成时就可以在其他代码中调用。
引用其他模块,包含python内置模块和其他第三方模块。
避免函数名和变量名等名称冲突。
python内建模块:
1.sys模块
2.random模块
3.os模块:
os.path:讲解
数据可视化
1.matplotlib :
是Python可视化程序库的泰斗,它的设计和在1980年代被设计的商业化程序语言MATLAB非常接近。比如pandas和Seaborn就是matplotlib的外包,它们让你能用更少的代码去调用 matplotlib的方法。
访问:
颜色:
教程:
2.Seaborn:
它是构建在matplotlib的基础上的,用简洁的代码来制作好看的图表。Seaborn跟matplotlib最大的区别就是它的默认绘图风格和色彩搭配都具有现代美感。
访问:
3.ggplot:
gplot 跟 matplotlib 的不同之处是它允许你叠加不同的图层来完成一幅图
访问:
4.Mayavi:
Mayavi2完全用Python编写,因此它不但是一个方便实用的可视化软件,而且可以方便地用Python编写扩展,嵌入到用户编写的Python程序中,或者直接使用其面向脚本的API:mlab快速绘制三维图
访问:
讲解:
5.TVTK:
TVTK库对标准的VTK库进行包装,提供了Python风格的API、支持Trait属性和numpy的多维数组。
VTK () 是一套三维的数据可视化工具,它由C++编写,包涵了近千个类帮助我们处理和显示数据
讲解:
机器学习
1.Scikit-learn
是一个简单且高效的数据挖掘和数据分析工具,易上手,可以在多个上下文中重复使用。它基于NumPy, SciPy 和 matplotlib,开源,可商用(基于 BSD 许可)。
访问:
讲解:
2.Tensorflow
最初由谷歌机器智能科研组织中的谷歌大脑团队(Google Brain Team)的研究人员和工程师开发。该系统设计的初衷是为了便于机器学习研究,能够更快更好地将科研原型转化为生产项目。
相关推荐:《Python视频教程》
Web框架
1.Tornado
访问:
2.Flask
访问:
3.Web.py
访问:
4.django
5.cherrypy
6.jinjs
GUI 图形界面
1.Tkinter
2.wxPython
3.PyGTK
4.PyQt
5.PySide
科学计算
教程
1.numpy
访问
讲解
2.sympy
sympy是一个Python的科学计算库,用一套强大的符号计算体系完成诸如多项式求值、求极限、解方程、求积分、微分方程、级数展开、矩阵运算等等计算问题
访问
讲解
解方程
3.SciPy
官网
讲解
4.pandas
官网
讲解
5.blaze
官网
密码学
1.cryptography
2.hashids
3.Paramiko
4.Passlib
5.PyCrypto
6.PyNacl
爬虫相关
requests
scrapy
pyspider
portia
html2text
BeautifulSoup
lxml
selenium
mechanize
PyQuery
creepy
gevent
一个高并发的网络性能库
图像处理
bigmoyan
Python Imaging Library(PIL)
pillow:
自然语言处理
1.nltk:
教程
2.snownlp
3.Pattern
4.TextBlob
5.Polyglot
6.jieba:
数据库驱动
mysql-python
PyMySQL
PyMongo
pymongo
MongoDB库
访问:
redis
Redis库
访问:
cxOracle
Oracle库
访问:
SQLAlchemy
SQL工具包及对象关系映射(ORM)工具
访问:
peewee,
SQL工具包及对象关系映射(ORM)工具
访问:
torndb
Tornado原装DB
访问:
Web
pycurl
URL处理工具
smtplib模块
发送电子邮件
其他库暂未分类
1.PyInstaller:
是一个十分有用的第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。
2.Ipython
一种交互式计算和开发环境
讲解
命令
ls、cd 、run、edit、clear、exist
Python-os的path模块函数大全
在操作文件的时候,我们肯定是要使用到 os 模块的,但是 os 模块里面还有 path 模块,这个模块主要是用来获取文件的属性的。这篇博客来分享一下 path 模块的函数,希望对学习 Python 的小伙伴有所帮助。
返回绝对路径:
返回文件名:
返回list(多个路径)中,所有path共有的最长的路径:
返回文件路径:
路径存在则返回True,路径损坏返回False:
路径存在则返回True,路径损坏也返回True:
把path中包含的" "和" user"转换成用户目录:
根据环境变量的值替换path中包含的" {name}":
返回最近访问时间(浮点型秒数):
返回最近文件修改时间:
返回文件 path 创建时间:
返回文件大小,如果文件不存在就返回错误:
判断是否为绝对路径:
判断路径是否为文件:
判断路径是否为目录:
判断路径是否为链接:
判断路径是否为挂载点:
把目录和文件名合成一个路径:
转换path的大小写和斜杠:
规范path字符串形式:
返回path的真实路径:
从start开始计算相对路径:
判断目录或文件是否相同:
判断fp1和fp2是否指向同一文件:
判断stat tuple stat1和stat2是否指向同一个文件:
把路径分割成 dirname 和 basename,返回一个元组:
一般用在 windows 下,返回驱动器名和路径组成的元组:
分割路径中的文件名与拓展名:
把路径分割为加载点与文件:
遍历path,进入每个目录都调用visit函数,visit函数必须有3个参数(arg, dirname, names),dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数:
设置是否支持unicode路径名:
Python函数和模块的定义与使用,包括变量的类型及匿名函数用法
函数是组织好,可重复使用的,用来实现相关功能的代码段
函数提高了代码的重复利用率和应用的模块性。
除Python自带的函数之外,也可以自己创建函数,叫做自定义函数
语法:
函数代码块以 def 开头
参数为 输入值 ,放于函数名后口号里面,
函数内容以冒号:开始,函数体缩进, return 返回 输出值
函数调用使用关键字参数来确定传入的参数值,此时,如果多个函数则不需要按照指定顺序。
在定义函数时,指定参数默认值。调用时如果不传入参数,则使用默认值
不定长部分如果没有指定参数,传入是一个空元组
加了 两个星号 ** 的参数会以字典的形式导入
/ 用来指明函数形参必须使用指定位置参数,不能使用关键字参数的形式。
3.8版本之后的才能使用
不使用 def 定义函数,没有函数名
lamdba主体时一个表达式,而不是代码块,函数体比def简单很多
定义在函数内部的为局部变量,仅能在函数内部使用
定义在函数外部的为全局变量,可在全局使用
模块是将包含所有定义的函数和变量的文件,一般将同类功能的函数组和在一起称为模块。
模块需要导入后,在调用相应函数进行使用
模块导入的方法:
从模块中导入一个指定的部分
把一个模块的所有内容全都导入
Python中的模块
import os
print(os.name) # 操作系统名称 Windows nt 非Windows posix
print(os.sep) # 路径分隔符 Windows \ 其他 /
import os
# 使用 os.path 方法获取文件的路径
# 001.获取文件的绝对路径 使用abspath方法
print(os.path.abspath("04_模块导入.py"))
# 运行结果:D:\mypycharm\pythonProject\千峰培训\day11module1\04_模块导入.py
# 002判断是否是文件 False
print(os.path.isdir(""))
# 运行结果: False
# 003.判断文件是否存在如果存在返回True 否则返回False
print(os.path.exists("mydir"))
# True
import os
files = "2020.12.22.test.py"
print(files.rpartition(".")[-1])
print(os.path.splitext(files)[-1])
# 运行结果:
# 获取文件的后缀名 py
# 获取文件的后缀名 .py
import os
print(os.getcwd())
# 运行结果:
# D:\mypycharm\pythonProject\培训\day11module1
import os
os.chdir("mydir")
print(os.getcwd())
# D:\mypycharm\pythonProject\培训\day11module1\mydir
import os
os.rename("66.py","../99.py")
import os
# 001.删除文件
os.remove("../99.py")
# 002.删除空文件夹
os.rmdir("../mydir")
os.removedirs("mydir")
import os
os.mkdir("mydir")
import os
# 001.列出指定目录里所有的子目录和文件
print(os.listdir("D:\mypycharm\pythonProject"))
# 002.默认当前目录里的 子目录和文件
print(os.listdir())
# 运行结果:
# ['.idea', '千峰培训', '学校实习']
# ['03_module.py', '04_模块导入.py', '05_os.py', '2020.12.22.tests.py', 'a01_module1.py', 'a02_module2.py', '__pycache__']
import os
print(os.environ)
print(os.environ["PATH"])
import os
import string # 字符串模块
import random
files = "test.jpg"
# 01.获取文件的后缀
surffix = os.path.splitext(files)[-1]
# print(surffix) # .jpg
# 02.生成所有大小写字母的列表
res = list(string.ascii_letters)
# print(string.ascii_letters)
# 运行结果;abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
# 03.将0-9添加到res中
for i in range(0, 10):
res.append(str(i))
# 04.随机生成文件名:
mystr = "".join(random.sample(res, 10)) # sample随机生成10个字符
# print(mystr)
# bJpED6dj2Y
# 05.将文件名和后缀拼接
print(mystr+surffix)
import sys
print(sys.path)
res = sys.stdin
print(res)
import math
# print(math.pi) # 3.141592653589793
print(math.factorial(5)) # 120
# 幂运算 第一个参数是底数 第二个参数是幂
print(math.pow(2, 3)) # 8.0
# 向上取整和向下取整
print(math.floor(15.999)) # 15
print(math.ceil(15.001)) # 16
# 四舍五入
print(round(123.51, 1)) # 123.5
# 三角函数
print(math.sin(math.pi / 6)) # sin(pi/6) 0.49999999999999994
print(math.cos(math.pi / 3)) # sin(pi/3) 0.5000000000000001
print(math.tan(math.pi / 4)) # sin(pi/6) 0.9999999999999999
# 开方
a = 9
b = 16
print(math.sqrt(a+b)) # 5.0
# 以e为底的指数函数
print(math.exp(a))
# 8103.083927575384
import random
# 01.random() 随机生成[0,1)之间的数 前闭后开
print(random.random()) # 生成[0,1)之间的小数
# 02.randint() 生成范围内的随机整数 全闭
print(random.randint(10, 20)) # 生成[10,20]之间的整数
# 03.randrange() 生成范围内的随机整数 前闭后开
print(random.randrange(10, 20)) # 生成[10,20)之间的整数
# 04.choice 参数是列表 随机从列表中取一个 取一次
print(random.choice([1, 2, 3, 4, 5, 6, 77, 8, 9]))
# 05.sample 的第一个参数 必须是一个可迭代对象
# 第二个参数代表着从可迭代对象从随机选取几个,选取的对象不能重复
print("".join(random.sample(["a", "b", "c", "d"], 3)))
import datetime as dt # 引入datetime 模块并将其命别名为dt
import time
import calendar # 引入日历模块
# 01.datetime模块
# 001.获取当前时间的具体信息
print(dt.datetime.now())
# 运行结果:
# 2020-12-26 15:36:36.408129
# 年 月 日 时 分 秒 毫秒
# 002.创建日期
print(dt.date(2020,1,1))
# 年月日 2020-01-01
# 003.创建时间
print(dt.time(16,30,30))
# 时 分 秒: 16:30:30
# 004.timedelta() 括号中的默认参数是天
print(dt.datetime.now()+dt.timedelta(3)) # 2020-12-25 15:50:15.811738
print(dt.datetime.now()+dt.timedelta(hours=3)) # 2020-12-22 18:51:41.723093
print(dt.datetime.now()+dt.timedelta(minutes=10)) # 2020-12-22 16:01:41.723093
# 02.time
# 001.当前时间的时间戳
# 时间戳是指从1970—01-01 0:0:0到现在的秒数 utc时间 也叫格林尼治时间
print(time.time())
# 002.按照指定格式输出时间
# print(time.strftime("%Y-%m-%d %H:%M:%S")) # 2020-12-22 15:57:49
# 时间格式:
# %Y Year with century as a decimal number.
# %m Month as a decimal number [01,12].
# %d Day of the month as a decimal number [01,31].
# %H Hour (24-hour clock) as a decimal number [00,23].
# %M Minute as a decimal number [00,59].
# %S Second as a decimal number [00,61].
# %z Time zone offset from UTC.
# %a Locale's abbreviated weekday name.
# %A Locale's full weekday name.
# %b Locale's abbreviated month name.
# %B Locale's full month name.
# %c Locale's appropriate date and time representation.
# %I Hour (12-hour clock) as a decimal number [01,12].
# %p Locale's equivalent of either AM or PM.
# 003.ctime 和 asctime 时间格式 输出的时间格式一样,
# print(time.asctime()) # Tue Dec 22 15:57:49 2020
# print(time.ctime()) # Tue Dec 22 15:58:35 2020
# 004.sleep() 时间休眠
print("我负责浪")
print(time.sleep(3))
print("你负责漫")
# 005.calender 生成日历
res = calendar.calendar(2021) # 生成2021年的日历
print(res)
# 006.判断是否为闰年
print(calendar.isleap(2020)) # True
# 007.从1988年 到 2020年有多少个闰年
print(calendar.leapdays(1988, 2020)) # 8
python中函数名的命名规则
Python 命名一般来说有一下不成文的规则 :
模块名一般使用全部小写 如 myphone
类名第一个字母大写,如果有多个单词,每一个单词的第一个字母大写如 : MyPhone
函数名 : 小写, 如果有多个单词用下划线隔开 如 my_phone
常量名字一般全大写 : MYPHONE
当前题目:python函数模块名称 python在模块中定义函数
文章位置:http://cdiso.cn/article/hgeipe.html