zoukankan      html  css  js  c++  java
  • 神奇语言 python 模块一

    在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了。

    为此 Python 提供了一个办法,把这些定义存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块。

    模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。

    自定义模块:

    为什么要使用模块?

    1、从文件级别组织程序,更方便管理
    随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用

    2、拿来主义,提升开发效率
    同样的原理,我们也可以下载别人写好的模块然后导入到自己的项目中使用,这种拿来主义,可以极大地提升我们的开发效率,避免重复造轮子。

    ps:
    如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python meet.py方式去执行,此时meet.py被称为脚本script。

    1 import 翻译过来是一个导入的意思

    代码示列
    import meet
    import meet
    import meet
    import meet
    import meet
    
    执行结果: 只打印一次
    from the meet.py
    import :
    (1)模块名 把这个模块下所有东西全部导入
    (2)多个模块名 不建意写在一行
    (3) 模块名 as 起个小名
    importtttt.py as f 
    f.read1()

    (4)模块名多次导入的时候 实际只导入一次
    import os,sys,json   这样写可以但是不推荐
    推荐写法
    
    import os
    import sys
    import json
    (5)导入过来的功能都需要使用模块点的方法去执行
    2 from:翻译
    from 模块名 import 指定导入内容
    from 模块名 import 多个功能
    form 导入多个模块的时候要一行一行的导入
    from 模块 import* 不建议使用
    from 模块 import 功能1as 小名功能2 as 起个小名
     from导入的时候,一行导入多个内容
    
    from meet import read1,read2,name

    3 from import 与 import对比
    from .....import...
    好处 :使用起来方便
    坏处:容易与当前文件中执行的名字起冲突

    4 time模块
    time : 翻译过来就是时间的意思
    常用访法
    1.time.sleep(secs) 推迟指定时间运行 单位为秒
    time.time 获取当前时间戳

    (1)时间戳: 通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型

    (2).格式化字符串时间: 格式化的时间字符串(Format String): ‘1999-12-06’

    python中时间日期格式化符号:
    %y 两位数的年份表示(00-99%Y 四位数的年份表示(000-9999%m 月份(01-12%d 月内中的一天(0-31%H 24小时制小时数(0-23%I 12小时制小时数(01-12%M 分钟数(00=59%S 秒(00-59%a 本地简化星期名称
    %A 本地完整星期名称
    %b 本地简化的月份名称
    %B 本地完整的月份名称
    %c 本地相应的日期表示和时间表示
    %j 年内的一天(001-366%p 本地A.M.或P.M.的等价符
    %U 一年中的星期数(00-53)星期天为星期的开始
    %w 星期(0-6),星期天为星期的开始
    %W 一年中的星期数(00-53)星期一为星期的开始
    %x 本地相应的日期表示
    %X 本地相应的时间表示
    %Z 当前时区的名称
    %% %号本身

    (3).结构化时间:元组(struct_time) struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)

    img



    把时间戳转化成字符串时间:
    print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))
    首先转换成结构时间 ,然后在转换成字符串时间
    print(time.strftime("%Y-%m-%d",time.localtime()))
    自己指定要转换的时间

    print(time.strftime("2019-1-15","%Y-%m-%d %H:%M"))
    # 第一个参数是字符串的时间,要输入格式
    t=time.strftime("2019-1-15","%Y-%m-%d %H:%M")
    print(time.mktime(t))
    mktime 把一个结构化转成一个时间戳
    结构化时间
    把时间戳转化成结构时间
    print(time.gmtime()) #英国伦敦 gmtime (时间戳不写使用默认使用当前的时间)
    print(time.localtime())# 本地计算机时间本地时间localtime(时间戳不写使用默认使用当前的时间)
    (5)datetime
    获取当前日期和时间
    from datetime import datetime
    
    print(datetime.now())
    
    '''
    结果:2018-12-04 21:07:48.734886
    '''
    datetime.now()获取当前时间
     print(datetime.fromtimestamp(time.time()))  # 将时间戳转换成时间类型
    
    print(datetime.strptime('2018-10-1 13:14','%Y-%m-%d %H:%M'))  # 字符串转换成一个时间类型
    
    datetime.now()
    s = datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S')  # 把一个时间类型转换成字符串

    (6)

    timedelta 修改的时间
    print(datetime.now() + timedelta(hours=1))
    print(datetime.now() + timedelta(days=1))

    t = datetime.now() + timedelta(weeks=3)
    print(t - timedelta(days=2,hours=13))
     




  • 相关阅读:
    逻辑回归问题(Logistic Regression)
    丑数
    用两个栈实现队列
    重建二叉树
    单变量的线性回归(Linear Regression with One Variable)
    机器学习
    二维数组中的查找
    面经
    亚信实习---->PLSQL链接Oracle
    亚信实习小练习
  • 原文地址:https://www.cnblogs.com/zhangguangpei/p/10272479.html
Copyright © 2011-2022 走看看