1 import schedule
2 import time
3
4 def start(): #定义一个函数
5 print("****")
6
7
8 if __name__ == '__main__':
9 schedule.every(2).seconds.do(start) #它的意思就是每隔2秒执行一次start函数
10 while True: #这里就是定义一个死循环
11 schedule.run_pending() //每次检查一下两秒间隔到了没有
12 time.sleep(1) //这个就是让程序休眠几秒

除了可以间隔多少秒执行一次函数,还可以间隔多少分钟、小时

1、间隔两小时

schedule.every(2).hours.do()

2、间隔两分钟

schedule.every(2).minutes.do()

importlib.import_module动态导入模块

先看目录结构

项目xiang1里面有一个python包为a。a包里面有一个python文件aa.py和一个包b。b包里面有一个python文件bb.py和一个包c。c包里面有一个python文件cc.py

前提条件:

aa.py,bb.py,cc.py三个文件里面都有一个同样的类

class People(object):

    def __init__(self,age,name='嘿嘿'):
self.age=age
self.name=name

1、把aa.py中People类导入到cc.py

import importlib

module = importlib.import_module('a.aa')
classes = getattr(module,'People')
peo = classes(1) print(peo.__dict__)

输出结果

{'age': 1, 'name': '嘿嘿'}

注释:

importlib.import_module这个方法是导入一个模块,有两种导入方式

1、绝对路径导入

2、相对路径导入(相对路径的例子在下面)

这种导入方式用的是绝对路径导入,绝对路径只能包括包名或者python文件名。所以没有写成“xiang1.a.aa”而写成了“a.aa”

getattr函数要传两个参数,一个是你要从哪个模块里面导入哪个内容。(这两个哪个,就分别对应它的两个参数)

2、把bb.py中People类导入到cc.py

import importlib

module = importlib.import_module('a.b.bb')
classes = getattr(module,'People')
peo = classes(1) print(peo.__dict__)
'''
输出结果:
{'age': 1, 'name': '嘿嘿'}
'''

3、把bb.py中People类导入到aa.py

import importlib

module = importlib.import_module('.b.bb','a')
classes = getattr(module,'People')
peo = classes(1)

输出结果还是上面那个

注释:

这个就用到的是相对路径导入,这个时候你的路径名就是以   ‘./’   来开头的。而且要传两个参数

1、第一个参数是相对路径

2、第二个参数是以谁为相对路径(哪个谁就是第二个参数)

importlib手册

python中schedule模块的简单使用 || importlib.import_module动态导入模块的更多相关文章

  1. 动态导入模块:__import__、importlib、动态导入的使用场景

    相关内容: __import__ importlib 动态导入的使用场景 首发时间:2018-02-23 16:06 __import__: 功能: 是一个函数,可以在需要的时候动态导入模块 使用: ...

  2. Python 实现抽象类的两种方式+邮件提醒+动态导入模块+反射(参考Django中间件源码)

    实现抽象类的两种方式 方式一 from abc import ABCMeta from abc import abstractmethod class BaseMessage(metaclass=AB ...

  3. Python importlib(动态导入模块)

    使用 Python importlib(动态导入模块) 可以将字符串型的模块名导入 示例: import importlib module = 'module name' # 字符串型模块名 test ...

  4. python学习之-- 动态导入模块

    python 动态导入模块方法1: __import__ 说明: 1. 函数功能用于动态的导入模块,主要用于反射或者延迟加载模块. 2. __import__(module)相当于import mod ...

  5. python动态导入模块——importlib

    当在写代码时,我们希望能够根据传入的选项设置,如args.model来确定要导入使用的是哪个model.py文件,而不是一股脑地导入 这种时候就需要用上python的动态导入模块 比如此时文件结构为: ...

  6. Python中关于csv的简单操作

    Python中关于csv的简单操作 CSV操作简单,直接import csv即可, 主要使用reader和pandas 1 reader的简单使用 csv.reader("1.csv&quo ...

  7. Python中关于txt的简单读写模式与操作

    Python中关于txt的简单读写操作 常用的集中读写模式: 1.r 打开只读文件,该文件必须存在. 2.r+ 打开可读写的文件,该文件必须存在. 3.w 打开只写文件,若文件存在则文件长度清为0,即 ...

  8. python中动态导入模块

    当导入的模块不存在时,就会报ImportError错误,为了避免这种错误可以备选其他的模块或者希望优先使用某个模块或包,可以使用try...except...导入模块或包的方式. 例如: Python ...

  9. Python 动态导入模块

    动态导入模块 目录结构: zhangsandeMacBook-Air:1110 zhangsan$ tree . . ├── lib │   └── aa.py ├── test1.py lib目录下 ...

随机推荐

  1. maven生命周期与插件

    目录 Maven生命周期 clean default site 命令与对应周期 插件与绑定 插件目标 插件绑定 内置绑定 自定义绑定 插件配置 本文主要是针对<maven实战>书中关键知识 ...

  2. 【Linux】ssh远程连接到指定ip的指定用户上

    通过ssh可以远程连接到其他的机器上,但是如果只想连接到指定的用户的话 需要这样做: -l 选项 (是L不是I,小写) ssh IP -l 用户名 这里的ip如果在hosts下就可以直接输入域名或者主 ...

  3. C语言中左值和右值的区别(C语言学习笔记)

    重要的内容要重复强调: C语言的术语Ivalue指用于识别或定位一个存储位置的标识符.( 注意:左值同时还必须是可改变的) 其实rvalue的发明完全是为了搭配lvalue , rvalue你可以理解 ...

  4. oracle修改表栏位类型

    需求:ID栏位在创建的时候是varchar类型,后续要修改为number类型 因为oracle修改表栏位类型的时候需要栏位内没有数据,因此无法直接把ID从varchar修改为number 1.新建一个 ...

  5. 【对线面试官】Java多线程基础

    // 请求直接交给线程池来处理 public void push(PushParam pushParam) { try { pushServiceThreadExecutor.submit(() -& ...

  6. 全网最全!彻底弄透Java处理GMT/UTC日期时间

    目录 前言 本文提纲 版本约定 正文 Date类型实现 时区/偏移量TimeZone 设置默认时区 让人恼火的夏令时 Date时区无关性 读取字符串为Date类型 SimpleDateFormat格式 ...

  7. [USACO13DEC]牛奶调度Milk Scheduling

    原题链接https://www.lydsy.com/JudgeOnline/problem.php?id=4096 容易想到的一个测略就是,优先考虑结束时间小的牛.所以我们对所有牛按照结束时间排序.然 ...

  8. Redis 实战 —— 07. 复制、处理故障、事务及性能优化

    复制简介 P61 关系型数据库通常会使用一个主服务器 (master) 向多个从服务器 (slave) 发送更新,并使用从服务器来处理所有读请求. Redis 也采用了同样的方法实现自己的复制特性,并 ...

  9. 从零搭建一个IdentityServer——项目搭建

    本篇文章是基于ASP.NET CORE 5.0以及IdentityServer4的IdentityServer搭建,为什么要从零搭建呢?IdentityServer4本身就有很多模板可以直接生成一个可 ...

  10. 前端面试准备笔记之JavaScript(02)

    01. this的典型应用场景 this在各个场景中取什么值,是在函数执行的时候确认的,不是在定义的时候确认的. 普通函数执行 返回window function fn1() { console.lo ...