zoukankan      html  css  js  c++  java
  • 代码块

    模块
    什么是模块?
    模块能干什么?
    1.文件化管理 提高了可读性,避免重复代码
    2.拿来就用(避免反复造轮子) Python中类库特别多

    定义一个模块
    一个文件就是一个模块 (模块就是一个工具箱 工具:函数)

    import 导入 拿test工具箱

    impor时会做三件事:
    1.将test.py文件中所有代码取到当前文件
    2.当前文件开辟空间
    3.等待被调用
    import导入同一个文件模块时只执行一次

    import导入同一个模块名时,只执行一次
    import test #导入 拿test工具箱
    import test #导入 拿test工具箱
    import test #导入 拿test工具箱

    import test
    test.t1()
    test.t2()
    test.t3() 拿大指定的工具

    import test #只能将整个工具箱拿出来
    a = test.t1
    b = test.t2
    a()
    b()

    import test as t #工具箱名字过长可以其别名
    t.t1()

    import test #导入模块不能加后缀名

    飘红线不代表报错

    from test import t1 as t 从test工具箱中将t1这个工具拿出来命名为t

    def t1():
    print("高级工程师")
    t1()
    t()

    import 和 from的区别:
    1.from只能执行导入的工具
    2.import能够执行整个模块中的所有的功能
    3.from容易将当前文件中定义的功能覆盖
    4.from 比 import灵活

    import 只能导入当前文件下的模块
    import 后边不能加点操作

    from day15 import ttt
    from day15.ttt import func
    func()

    import和from 使用的都是相对路径

    import sys #python解释交互接口
    print(sys.path)
    sys.path.append("C:UsersoldboyDesktop")
    print(sys.path)

    模块导入顺序:
    sys.path.append(r"C:UsersoldboyDesktop")
    内存 > 内置 > 第三方> 自定义

    sys.path.insert(0,r"C:UsersoldboyDesktop")

    内存 > 自定义 > 内置 > 第三方

    模块的两种方法:if__name__=="__mail"
    1.当做模块被导入 import from
    2.当做脚本被执行

    import test

    只有py文件当做模块被导入时,字节码才会进行保留

    以后你们导入模块会产生的坑

    1.注意自己定义模块的名字
    import abcd
    abcd.func()

    2.注意自己的思路-------- 循环导入时建议 导入模式放在需要的地方

    from test import b

    a = 10

    print(b)

    import test,c,abcd 不建议这样导入

    test.t1()

    print(c.ac)

    abcd.func()

    import test

    import c

    import abcd # 建议这样导入

    import from

    from test import * # 拿整个工具箱

    t1()

    t2()

    print(tt)

    通过__all__ 控制要导入的内容 文件顶端__all__=["需要的文件工具"]

    time模块:
    import time 内置模块--标准库
    print(time.time())#时间戳 浮点数 秒
    time.sleep(3) #秒
    将时间戳转化为结构化时间
    print(time.localtime(time.time())) #命名元祖
    print(time.localtime())[0])

    print(time.localtime(time.time())).tm_year)
    将结构化时间转化成字符串

    time1 = time.localtime()
    print(time.strftime("%Y-%m-%d %H:%M:%S",time1))

    将字符串转化成结构化时间
    str_time = "2018-10-1 10:11:12"
    time1 = time.strptime(str_time,"%Y-%m-%d %H:%M:%S")

    将结构化时间转换成时间戳
    print(time.mktime(time_j))

    str_time = "2016-10-1 10:11:12"
    time_int = time.time() - time.mktime(time.strptime(str_time,"%Y-%m-%d %H:%M:%S"))
    print(time.localtime(time_int))

    总结:
    time.time() 时间戳
    time.sleep() 睡眠
    time.localtime() 时间戳转结构化
    time.strftime() 结构化转字符串
    time.strptime() 字符串转结构化
    time.mktime() 结构化转时间戳
    %Y 年
    %m 月
    %d 日
    %H 时间
    %M 分钟
    %S 秒

    from datetime import datetime,timedelta
    print(datetime.now()) #获取当前时间

    print((2018,10,1,10,11,12) - datetime(2011,11,1,20,10,10)))
    指定时间

    将对象转换成时间戳
    d = datetime.now()
    print(d.timestamp())

    将时间戳转换成对象
    import time
    f_t = time.time()
    print(datetime.fromtimetamp(f_t))

    将对象转换成字符串
    s = "2018-12-31 10:11:12"
    print(datetime.strptime(s,"%Y-%m-%d %H:%M:%S"))

    可以进行加减运算

    from datetime import datetime,timedelta

    print(datetime.now() - timedelta(days=1))

    print(datetime.now() - timedelta(hours=1))

    import random

    print(random.randint(1,50))

    选择1-50之间随机的整数

    print(random.random())

    0-1 之间随机小数,不包含1

    print(random.uniform(1,10))

    1- 10 之间随机小数,不包含10

    print(random.choice((1,2,3,4,5,7)))

    #从容器中随机选择一个

    print(random.choices((1,2,3,4,5,7),k=3))

    从容器中随机选择3个元素,以列表的形式方式,会出现重复元素

    print(random.sample((1,2,3,4,5,7),k=3))

    从容器中随机选择3个元素,以列表的形式方式,不会出现重复元素

    print(random.randrange(1,10,2)) # 随机的奇数或随机的偶数

    lst = [1,2,3,4,5,6,7]

    random.shuffle(lst)

    # 洗牌 将有序的数据打散

    print(lst)

  • 相关阅读:
    【转载】Chrome 0day漏洞:不要用Chrome查看pdf文件
    内网渗透闲谈
    Sticky Fingure安装教程
    局域网下交换机配置
    Access 2010 应用基础 单元三:SQL查询
    ESP8266 wifi干扰、钓鱼实现
    这是谁的锅
    svn/git的diff、patch
    sublime开发php必备工具集合(mac)
    gcc学习笔记
  • 原文地址:https://www.cnblogs.com/x-h-15029451788/p/11397542.html
Copyright © 2011-2022 走看看