一、模块与包

模块,在Python可理解为对应于一个文件。在创建了一个脚本文件后,定义了某些函数和变量。你在其他需要这些功能的文件中,导入这模块,就可重用这些函数和变量。一般用module_name.fun_name,和module_name.var_name进行使用。这样的语义用法使模块看起来很像类或者名字空间,可将module_name 理解为名字限定符。模块名就是文件名去掉.py后缀。

通常包总是一个目录,可以使用import导入包,或者from + import来导入包中的部分模块。包目录下为首的一个文件便是 __init__.py。然后是一些模块文件和子目录,假如子目录中也有 __init__.py 那么它就是这个包的子包了。

在创建许许多多模块后,我们可能希望将某些功能相近的文件组织在同一文件夹下,这里就需要运用包的概念了。包对应于文件夹,使用包的方式跟模块也类似,唯一需要注意的是,当文件夹当作包使用时,文件夹需要包含__init__.py文件,主要是为了避免将文件夹名当作普通的字符串。__init__.py的内容可以为空,一般用来进行包的某些初始化工作或者设置__all__值,__all__是在from package-name import *这语句使用的,全部导出定义过的模块

二、import导入

在python用import或者from…import或者from…import…as…来导入相应的模块,作用和使用方法与C语言的include头文件类似。其实就是引入某些成熟的函数库和成熟的方法,避免重复造轮子,提高开发速度。python的import方法可以引入系统的模块,也可以引入我们自己写好的共用模块。

import的几种用法:

1.如果是本地导入文件,直接使用:import filename

2. 如果导入的是一个包,该包下面必须是有__init__.py文件才可以导入,否则报错,只有有了__init__.py文件,python解析器才会把这个目录当成是的包

在导入的时候,.py的后缀直接省略,如果是多级的包,或者想导入包里面的函数等,可以使用from进行导入。实例如下:

#test.py

defhello():print('hello world')

importmomo.test

momo.test.hello()from momo importtest

test.hello()from momo.test importhello

hello()importmomo.test as aaaprint ('aaaaaaaaaaaaaa')

aaa.hello()print ('aaaaaaaaaaaaaa')

结果:

三、datatime获得时间

在 Python 文档里,time是归类在Generic Operating System Services中,换句话说, 它提供的功能是更加接近于操作系统层面的。通读文档可知,time 模块是围绕着 Unix Timestamp 进行的。关于时间子类之间的对应关系:

object

timedelta

tzinfo

time

date

datetime

实例:获取当前的时间

from datetime importdatetime, timedelta

now_time=datetime.now()print(now_time)

new_time= now_time.strftime('%Y-%m-%d %H:%M:%S')

a= now_time.strftime('%c')print(new_time)print (a)

结果:

解释:

1. 先导入datetime类

2. 通过datetime的now方法就获得当前所需要的时间

3.datetime还是有好多方法的,可以获取year, month,等,请通过dir()方法查看

4.此时我们获得的now_time还是一个datetime类,所以我们需用用strftime方法转换成字符串,strftime的参数就是最终需要字符串的形式。

5.Strftime需要便是时间的参数有很多,下面我们介绍一下最长用的一些参数:

格式参数:

%Y 带世纪部分的十制年份

%m 十进制表示的月份

%d 十进制表示的每月的第几天

%H 24小时制的小时

%M 十时制表示的分钟数

%S 十进制的秒数

%c 标准时间,如:04/25/17 14:35:14 类似于这种形式

实例:获取当前日期的前一天与后一天

now_time =datetime.now()

yesterday= now_time + timedelta(days=-1)

tomorrow= now_time + timedelta(days=+1)

tomorrow= tomorrow.strftime('%Y-%m-%d')print(yesterday)print (tomorrow)

结果:

解释:正数代表几天之后的,负数代表几天之前的

四、时间格式的相互转换

时间有三种存在方式:时间对象(datetime)、时间字符串(str)、时间戳(timestamp)

1.时间对象转换为时间字符串(datetime → str)

from datetime importdatetimeimporttime

now_time=datetime.now()print(now_time)print(type(now_time))print ('##########time to str############')

_time= now_time.strftime('%Y-%m-%d %H:%M:%S')print(_time)print (type(_time))

结果:

2.时间字符串转换为时间对象(str → datetime)

print ('###########str to time################')

d_time= datetime.strptime(_time,'%Y-%m-%d %H:%M:%S')print(d_time)print (type(d_time))

结果:

3.时间戳转换为时间对象(timestamp → datetime)

_a =time.time()print(_a)

_n_time=datetime.fromtimestamp(_a)print(_n_time)print (type(_n_time))

结果:

import time python_Python的import导入与时间相关推荐

  1. 深入探讨Python的import机制:实现远程导入模块 | CSDN博文精选

    来源 | Python编程时光(ID:Python-Time) 所谓的模块导入,是指在一个模块中使用另一个模块的代码的操作,它有利于代码的复用. 也许你看到这个标题,会说我怎么会发这么基础的文章? 与 ...

  2. 安装TensorRT,然后导入uff库包的时候报错:ImportError: ERROR: Failed to import module(cannot import name ‘GraphDef`)

    欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 安装TensorRT,然后导入uff库包的时候报错:ImportError: ERROR: Failed to impo ...

  3. python导入sas数据集_运用import过程进行SAS数据导入完全实用教程

    运用import过程进行SAS数据导入完全实用教程 1 单个规范格式文件导入. 对单个文件进行导入是我们遇到最多的情况,主要有以下几种: 1.1 对指定分隔符('|',' ','!','ab'等)数据 ...

  4. 【Vue-router中,require代替import解决vue项目首页加载时间过久】

    vue-router中,require代替import解决vue项目首页加载时间过久的问题 - 雨打芭蕉wt - 博客园

  5. 好用的import: Vite的Glob 导入

    Vite 的 Glob 导入 邮箱 :291148484@163.com CSDN主页:jclee95: https://blog.csdn.net/qq_28550263?spm=1001.2101 ...

  6. pythonimportpath_python import搜索路径与重新导入

    1.import搜索路径 使用import sys导入,sys.path可以查看当前的路径 In [5]: import sys In [6]: sys.path Out[6]: ['', '/usr ...

  7. from aip import AipOcr 安装aip与导入AipOcr报错

    pip install aip 报错:ERROR: Could not find a version that satisfies the requirement aip (from versions ...

  8. os什么意思python_Python中import os是什么意思?

    Import: 1. import 实际上是python虚拟机把当前的globals()和locals()传进__builtins__.__import__内置函数了,所以实际上干活的是那个__imp ...

  9. sqoop导入hive时间格式问题解决方案

    sqoop导入hive时间格式问题解决方案 从mysql导入数据时,发现时间格式有问题,要么是时间后面多一位零,要么要使用时间戳,还能不能好好玩耍了?! 于是,我就逛论坛,找大神,最终无果,也许这个问 ...

最新文章

  1. phpstudy更改但是php版本没变
  2. show一下新模板(分享全套CSS和图片)
  3. html限制最多字符串,css – 设置字符串换行中允许的最大换行量
  4. price ceiling
  5. 安装JDK和tomcat
  6. 请教各位前辈一个问题。
  7. bcm94352屏蔽第20针脚图_iOS13屏蔽系统更新教程-【转载】
  8. 拾色器 插件 html,Unity3D 插件开发教程 #3:制作拾色器 ColorPicker
  9. 音视频开发(四十四):M3U8边缓存边播放
  10. 1007 素数对猜想 (20 分)(打表)
  11. 压在redis身上的三座大山
  12. fatal: the remote end hung up unexpectedly问题解决办法
  13. 前端面试题汇总(含答案)(HTML+CSS篇)
  14. 莫纳什计算机硕士课程挂科率,莫纳什真的是挂科重灾区?
  15. zzulioj1197 考试排名(一)(结构体专题)
  16. matlab里面axis auto,Matlab中axis函数用法总结-Go语言中文社区
  17. 服务器Linux硬盘分区,Linux磁盘分区实现原理及方法解析
  18. 环信IM快速集成集成,实现客服功能(单聊)
  19. 数学会对计算机编程的关系
  20. DO447Ansible Tower的维护和常规管理--备份和修复

热门文章

  1. HOHO 拿了個小嘉獎 Happy一下 可惜過年可能被留下...痛苦
  2. 洛谷P3048 [USACO12FEB]牛的IDCow IDs
  3. Spring mvc4 + ActiveMQ 整合
  4. VC++实现数据包嗅探
  5. 大数据之-Hadoop之HDFS_Fsimage和Edits文件的解析---大数据之hadoop工作笔记0071
  6. k8s集群部署项目_JAVA项目(制作镜像)---K8S_Google工作笔记0060
  7. MFC工作笔记0010---PeekMessage 详解
  8. js工作笔记004---加载数据延迟导致的不确定问题的解决_setTimeout和window_onload
  9. Python工作笔记007---win10安装Python3.7.3_以及用pycharm创建Python项目_以及对System interpreter理解
  10. 微信小程序开发学习笔记002--微信小程序框架解密