Python进阶9模块与包

1,什么叫做模块

一个模块中可以包含多个函数

在Python中,一个扩展名为 .py的文件就是一个模块

使用模块的好处

​ 方便其他程序的的导入

​ 避免函数名和变量名冲突

​ 提高代码的可为维护性

​ 提高代码的·可重用性

2,自定义模块

import math
print(id(math))

print(math.pi)
#e
print(math.e)
#次幂
print(math.pow(2,3))#8.0
#向上取整,ceil的意思是天花板
print(math.ceil(9.001))#10
#向下取值,floor地板的意思
print(math.floor(9.99999))#9
print('----------------导入模型中特殊的一个--------------')
from math import pi
print(pi)
print(pow(2,3,))#将会显示错误

python文件都是一个模块,如果想用模块里面的函数,可以在心得为文件中用:

import 文件名,使用时,用文件名(模块名).方法 进行调用,但是在调用之前需要进行设置一下,在模板所在的文件夹中单击右建,出现Mark Directory as

或者

from 文件名 (模块名) import 方法

可以直接使用这个方法

3,以主程序的形式执行

意思就是在模型文件如果有输出语句,在其他文件里面调用这个模型时,可能会把原先的模型文件的程序作为主程序,连带着主程序的输出直接输出过来

4,python中的包

创建python包

创建包,在包里面可以写模型,在其他文件里面可以调用这个包,方法是:

import 包名.模块名

使用的时候用 包名.模块名.方法名

或者,如果嫌名称太长,还可以用

import 包名.模块名 as 代称,随便啥字母单词都行,在下面不用写模块名,可以直接用这个代称来替代了

导入带有包的模块时,注意事项

import package1

import Moudle

使用import方法导入时,只能跟报名或者模块名

from package import module

from package.moudle import a(参数):

使用 from 。。。import 可以导入的模块名或者函数名和变量名

5,第三方模块的安装及使用

#基本格式
#创建方法
def func():
    print("方法")
    
#创建定时
schedule.every().seconds.do(func)  #每秒运行一次
#如果方法需要传参的话do(func,参数1)


#开循环
while True:
    schedule.run_pending()
    
#如果值运行一次schedule.every().day.do(func).run()
  • schedule.every().seconds 每秒运行一次
  • schedule.every(2).seconds 每2秒运行一次
  • schedule.every(1).to(5).seconds 每1-5秒运行一次
  • schedule.every().minutes 每分钟运行一次
  • schedule.every().hour 每小时运行一次
  • schedule.every().day 每天运行一次如果后面没有at表示每天当前时间执行一次
  • schedule.every().day.at(“00:00”). 每天凌晨运行一次
  • schedule.every().week每周凌晨运行一次
  • schedule.every().wednesday.at(“00:00”) 每周三凌晨运行一次
#周一到周日
monday
tuesday
wednesday
thursday
friday
saturday
sunday

#at一些技巧
at(HH:MM:SS)
at("00:00") 凌晨一点
every().hour.at(':30')  每小时30分
every().minute.at(':30') 没分钟30#关于day与days以及week和weeks,monday与mondays等等等等
你能用day的地方一定能用days其他也一样
如果every()里面值不为1或者空时候必须用他复数

三.取消任务和取消指定任务

取消任务

schedule.clear()

取消指定任务

#需要引入tap
def greet(name):
    print('Hello {}'.format(name))

schedule.every().day.do(greet, 'Andrea').tag('daily-tasks', 'friend')
schedule.every().hour.do(greet, 'John').tag('hourly-tasks', 'friend')
schedule.every().hour.do(greet, 'Monica').tag('hourly-tasks', 'customer')
schedule.every().day.do(greet, 'Derek').tag('daily-tasks', 'guest')

schedule.clear('daily-tasks') #q取消所有标签为daily-tasks的任务

四.如何让任务值执行一次

就是在定义任务的时候加个return

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0;%SYSTEMROOT%\System32\OpenSSH;D:\MATLAB\R2016b\runtime\win64;D:\MATLAB\R2016b\bin

#定时发送邮件
import schedule
import time
def job():
    print('毛腾凯非常丑!该减肥了')
schedule.every(3).seconds.do(job)
while True :
    schedule.run_pending()
    time.sleep(1)

时发送邮件
import schedule
import time
def job():
print(‘毛腾凯非常丑!该减肥了’)
schedule.every(3).seconds.do(job)
while True :
schedule.run_pending()
time.sleep(1)

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值