zoukankan      html  css  js  c++  java
  • Python之路Day15

    自定义模块

    • 模块作用:

      • 文件化管理 -- 提高可读性,避免重复代码

      • 拿来就用 -- 避免重复造轮子,python中类库特别多

    • 定义一个模块:

      • 一个文件就是一个模块

      • import 模块 #导入

    • import 时会做三件事

      • 将模块文件中所有的代码读取到当前文件

      • 开辟空间

      • 等待被调用

    • import 导入同一个模块名时,只执行一次,且只能将工具箱拿来

    • 可给工具箱起别名 ,例如import test as t

    • 导入名字时不能加后缀

    • from test import t1 从test工具箱中将t1工具拿出来(飘红不代表报错)

    • 给工具改名 from test import t1 as t

    • import 与 from的区别:

      • import 能够执行模块中所有的功能

      • from 只能执行导入的工具

      • from 容易将当前文件中定义的功能覆盖

      • import 后面不能加点操作

      • import 和 from 导入的都是相对路径

        • from day15 import ttt  #从day15文件夹中拿出ttt工具箱
          from day15.ttt import func  #从day15文件夹中拿出ttt工具箱中的func工具
    • import sys  #和python解释交互接口
      print(sys.path)
    • 模块导入顺序:

      • sys.path.append()

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

      • sys.path.insert()

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

    • if _name_=='_main_'

      • 当文件当作模块被调用的时候__name__返回的是当前模块名

      • 当文件当作脚本使用时__name__返回的是__main__

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

    • 以后导入模块会产生的坑

      • 自己定义的模块的名字不要与自带的模块重名

      • 注意自己的思路,不要让代码打架

    • 不建议一行导入多个模块,分开导入方便后期维护

    • from test import * 拿整个工具箱

    • 通过__all__控制要导入的内容,在模块最上方写入__all__['','','']列表中的是允许被导入的内容

    time模块

    • import time #内置模块——标准库

    • print(time.time()) #时间戳,浮点数 秒

    • time.sleep() #睡眠,秒

    • 时间戳转结构化时间

      • print(time.localtime(time.time()))输出为命名元组形式,可索引,如果localtime()中不写,则使用的是当前时间戳

    • 结构化转字符串格式

      • time_g=time.localtime(time.time())
        time.strftime('%Y-%m-%d %H-%M-%S',time_g)
    • 字符串格式转结构化

      • str_time='2018-10-1 10:11:12'
        time_g=time.strptime(str_time,'%Y-%m-%d %H-%M-%S')
    • 将结构化时间转换成时间戳

      • print(time.mktime(time_g))

    datetime

    • from datetime import datetime
      print(datetime.now())  #获取当前时间
    • print(datetime(2018,10,1,10,11,12)-datetime(2011,11,11,20,11,12))   #指定时间
    • d=date.time.now()
      print(d.timetamp())  #将对象转换成时间戳
    • import time
      f_t=time.time()
      print(datetime.fromtimestamp(f_t))  #将时间戳转换成对象
    • d=datetime.now()
      d.strftime('%Y-%m-%d %H-%M-%S')  #将对象转换成字符串
    • s='2018-12-31 10:11:12'
      datetime.strptime(s,'%Y-%m-%d %H-%M-%S') #将字符串转换成对象

    timedelta

    • from datetime import timedelta
      print(datetime.now() - timedelta(day=1)) #可以进行加减法
      

    random模块

    • import random
      print(random.randint(1,50))  #选择1-50之间随机的整数,包括50
      
      print(random.random())  #0-1之间随机小数,不包含1
      
      print(random.uniform(1,10))  #1~10之间随机小数,不包含10
      
      print(random.choice((1,2,3,4,5,6,7))  #从容器中随机选择一个
            
      print(random.choices((1,2,3,4,5,6,7),k=3)  #从容器中随机选择三个,返回的是列表,会出现重复元素
      
      print(random.sample((1,2,3,4,5,6,7),k=3)  #从容器中随机选择三个,返回的是列表,不会出现重复元素
            
      print(random.randrange(1,10,2))  #随机的奇数或者偶数
      
    • lst=[1,2,3,4,5,6,7]
      random.shuffle(lst)  #洗牌,将顺序打散,无返回值,在原地打乱顺序
      print(lst)
      
    •  

     

  • 相关阅读:
    border-radius
    border-style
    border-width
    border
    max-width
    min-width
    clip 语法
    left
    z-index
    position
  • 原文地址:https://www.cnblogs.com/zlx960303/p/12064094.html
Copyright © 2011-2022 走看看