time模块:

  1,计算执行代码的时间  time.time()

  2,让程序停这里一段时间  time.sleep(时间(s))

  时间戳时间:

import time
print(time.time()) # 1524553970.65817

  格式化时间:

    1,字符串格式化时间:

import time
# 字符串格式化时间,给人看的。
print(time.strftime('%Y-%m-%d %H:%M:%S')) # 2018-04-24 15:15:25
print(time.strftime('%y-%m-%d')) # 18-04-24 年份只剩两位数
print(time.strftime('%x %X')) # 04/24/18 15:17:26
print(time.strftime('%c')) # Tue Apr 24 15:18:17 2018

    2,结构化时间:时间戳时间 转 格式化时间的 中间件

import time
# 本地结构化时间
print(time.localtime())
# time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=15, tm_min=20, tm_sec=8, tm_wday=1, tm_yday=114, tm_isdst=0)
# 英国的结构化时间
print(time.gmtime())
# time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=7, tm_min=21, tm_sec=1, tm_wday=1, tm_yday=114, tm_isdst=0)

  格式化时间与时间戳格式时间的转换:

import time
p = time.strptime('1999-12-1','%Y-%m-%d') # 将格式化的时间转为结构化时间。
print(p) # time.struct_time(tm_year=1999, tm_mon=12, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=335, tm_isdst=-1)
print(time.mktime(p)) # 943977600.0 # 转为时间戳格式。
import time
ret = time.localtime(1500000000) # 将时间戳格式转为结构化时间。
res = time.strftime('%Y-%m-%d %H:%M:%S',ret) # 将结构化时间转为格式化时间
print(res) # 2017-07-14 10:40:00
%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 当前时区的名称
%% %号本身

python中时间日期格式化符号:

random模块:

    1,随机  打乱顺序有关的

  1,random():打印 0-1 之间的随机小数

import random
print(random.random()) # 打印 0-1 之间的随机小数

  2,uniform(start,end):打印从start到end 之间的随机小数

import random
print(random.uniform(1,4))

  3,randint(start,end):打印从start到end 之间的所有整数(包含start和end)

import random
print(random.randint(1,4))

  4,randrange(start,end,步长) :不包含 end

import random
print(random.randrange(1,10,2))

  5,choice(): 可从中随机选取一个元素。

import random
print(random.choice([1,'',3,4,[5,6],7]))

  6,sample():可以设置选取几个元素

import random
print(random.sample([1,'',3,4,[5,6],7],3))

  7,shuffle():可打乱顺序有关的数据类型,

item = [1,3,5,7,9]
import random
random.shuffle(item)
print(item) # [3, 9, 5, 7, 1]

sys模块:和python解释器交互的。

  1,sys.exit(n):退出程序,正常退出时 syy.exit(0),错误退出时sys.exit(1)。

import sys
print('*'* 6)
sys.exit() # 直接终止程序。
print(111)

  2,sys.version 获取python解释程序的版本信息。

import sys
print(sys.version) # 3.5.4 (v3.5.4:3f56838, Aug 8 2017, 02:17:05) [MSC v.1900 64 bit (AMD64)]

  3,sys.platform 返回操作系统平台名称(不准)

import sys
print(sys.platform) # win32

  4,sys.path 返回模块的搜索路径,初始化时使用pythonpath环境变量的值

import sys
print(sys.path)

  5,sys.argv 命令行参数list,第一个元素是程序本身路径(以脚本的形式执行一个文件的时候,可以加一些参数)

import sys
print(sys.argv) # ['F:/untitled/day27/day27process.py']

  需要在cmd中运行:

import sys
import logging
print(sys.argv)
inp = sys.argv[1] if len(sys.argv)>1 else 'WARNING'
logging.basicConfig(level = getattr(logging,inp)) # DEBUG
num = int(input('>>>'))
logging.debug(num)
a = num * 100
logging.debug(a)
b = a - 10
logging.debug(b)
c = b + 5
print(c)
# C:\Users\Think>python F:/untitled/day27/day27process.py DEBUG
# ['F:/untitled/day27/day27process.py', 'DEBUG']
# >>>5
# DEBUG:root:5
# DEBUG:root:500
# DEBUG:root:490
#

os 模块:

  当前执行这个python文件的工作目录相关的工作路径:

import os
print(os.getcwd()) # 获取当前工作目录,即当前python脚本工作的目录半径。
print(os.chdir('文件名')) # 改变当前脚本工作目录,相当于shell下cd.
print(os.curdir) # 返回当前目录:('.')
print(os.pardir) # 获取当前目录的父目录字符串名:('..')

  和文件夹相关的:

import os
os.makedirs('dirname1/dirname2') # 可生成多层递归目录(一次创建多级文件夹)
os.removedirs('dirname1/dirname2') #若目录为空,则删除,并递归到上一目录,如果也为空则删除,依此类推。
os.mkdir('dirname') # 生成单级目录,相当于shell中的 mkdir dirname (一次只能创建一个文件夹)
os.rmdir('dirname') # 删除单级空目录,若目录下不为空,则不能删除,会报错。相当于shell中 rmdir dirname
print(os.listdir('dirname1')) # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表形式打印。

  和文件相关的:

import os
os.remove('ret.py') # 默认删除相对路径下的ret.py文件
os.rename('oldname','newname') # 重命名文件/目录
os.stat('path/filename') # 获取文件/目录信息

  和操作系统差异相关的:

import os
print(os.sep) # \ 输出操作系统特定的路径分隔符,win: \\ linux: /
print(os.linesep) # 输出当前平台使用的行(hang)终止符,win: '\t \n', linux: '\n'
print(os.path.sep) # 输出用于分割路径的字符串 win: ;(分号) linux: :(冒号)
print(os.name) # 输出字符串指示当前使用的平台。 win: 'nt' linux: 'posix'

  和执行系统命令相关的:

import os
os.system('bash command') # 运行shell命令,直接显示。
os.popen('bash command').read() # 运行shell命令,获取执行结果。

  和环境变量相关的:

import os
print(os.environ) # 获取系统环境变量

  os.path

import os
print(os.path) # <module 'ntpath' from 'C:\\Python35\\lib\\ntpath.py'>
# 返回‘new_name.py’规范化的绝对路径。
print(os.path.abspath('new_name.py')) # F:\untitled\day28\new_name.py
# 将'F:\untitled\day28\new_name.py'分割成目录和文件名再以元祖形式返回。
print(os.path.split(r'F:\untitled\day28\new_name.py')) # ('F:\\untitled\\day28', 'new_name.py')
# 返回'F:\untitled\day28\new_name.py'的目录,其实就是os.path.split('路径')的第一个元素,\
# os.path.basename('路径') 就是返回path 最后的文件名,如果path以/或\结尾,那么就会返回空值。
print(os.path.dirname(r'F:\untitled\day28\new_name.py')) # F:\untitled\day28
print(os.path.basename(r'F:\untitled\day28\\')) # 这样返回的就是空值。
print(os.path.exists('new_name.py')) # True # 如果path存在返回True,否则返回False.
print(os.path.isabs('new_name.py')) # False 如果path是绝对路径,返回True,否则返回False
print(os.path.isabs(r'F:\untitled\day28\new_name.py')) # True
print(os.path.isfile('new_name.py')) # True 如果path是一个存在的文件,返回True,否则返回False
print(os.path.isdir(r'F:\untitled\day28\\')) # True 如果path是一个存在的目录,返回True,否则返回False
print(os.path.join(r'F:\untitled\day28\\','new_name.py')) # F:\untitled\day28\\new_name.py # 将多个路劲组合后返回,第一个绝对路径之前的参数将被忽略。
print(os.path.getatime('new_name.py')) # 1524641734.8249621 返回path所指向的文件或目录最后的访问时间。
print(os.path.getmtime('new_name.py')) # 1524641734.8249621 返回path所指向的文件或目录最后的修改时间。
print(os.path.getsize('new_name.py')) # 33 返回path指向的文件或目录的大小。

python's twenty-seventh day for me 模的更多相关文章

  1. python's twenty ninthday for me 模块和包

    模块 和 脚本的 区别:   如果一个py文件被导入了,就是一个模块. 如果这个py文件被直接执行,这个被直接执行的文件就是一个脚本. 模块:1,没有具体的调用过程.2,能对外提供功能. pyc文件: ...

  2. python's twenty eithth day for me 模块和包

    模块: 什么是模块: 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀,但其实import加载的模块分为四个通用类别: 1,使用python编写的代码 ...

  3. python's twenty day for me 继承 和 super()方法

    super(): 在单继承中就是单纯的寻找父类. 在多继承中就是根据子节点所在图 的mro顺序,找寻下一个类. 遇到多继承和super(): 对象.方法 1,找到这个对象对应的类. 2,将这个类的所有 ...

  4. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  5. Python 連接 MySQL

    Python 連接 MySQL MySQL 是十分流行的開源資料庫系統,很多網站也是使用 MySQL 作為後台資料儲存,而 Python 要連接 MySQL 可以使用 MySQL 模組.MySQLdb ...

  6. Python学习笔记(一):基本数据类型

    在Python3种,有六种标准数据类型: 数字(Number) 字符串(String) 列表(List) 元组(Tuple) 集合(Set) 字典(Dictionary) 这六种数据类型中,数字类型和 ...

  7. Python之流程控制——while循环

    Python之流程控制--while循环 一.语法 while 条件: 执行代码 while就是当的意思,它指当其后面的条件成立,就执行while下面的代码. 例:写一个从0打印到10的程序 coun ...

  8. pyhon 模块与库

    引用“http://www.iplaypython.com/module/” 引用“http://codingnow.cn/language/265.html” Python模块是什么? 玩蛇网:一个 ...

  9. Pyhton开源框架(加强版)

    info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...

  10. 【翻译】How To Tango With Django 1.5.4 第五章

    5数据模型和数据库 一个模型就是一个描述你数据表的python对象.不用再通过SQL来操作数据库,而是使用python对象来操作数据库. 5.1rango要求 ...一个目录下面有多个下面 ...一个 ...

随机推荐

  1. Java基础16:Java多线程基础最全总结

    Java基础16:Java多线程基础最全总结 Java中的线程 Java之父对线程的定义是: 线程是一个独立执行的调用序列,同一个进程的线程在同一时刻共享一些系统资源(比如文件句柄等)也能访问同一个进 ...

  2. Intent Flag启动模式P203

    Activity启动模式:点此查看 Intent intent = new Intent(); /** * Intent.FLAG_ACTIVITY_NEW_TASK * 使用一个新的Task来启动一 ...

  3. opencv 边界确定函数

    多边形逼近,用嘴贴切的多边形标识 void approxPolyDP(InputArray curve, OutputArray approxCurve, double epsilon, bool c ...

  4. 当导用模块与包的import与from的问题(模块与包的调用)

    当在views.py里写impor models会不会报错呢? 1.Python里面的py文件都是每一行的代码. 2.Python解释器去找一个模块的时候,只去sys.path的路径里找 3.djan ...

  5. I.MX6 AR8031 寄存器操作

    /*************************************************************************** * I.MX6 AR8031 寄存器操作 * ...

  6. python学习之数据结构

    python的数据很丰富,所以对于数据分析来讲, python是一种最合适的选择 下面讲述一下常见的数据结构,包括栈,队列,元组,字典,集合等,以及对这些数据结构进行操作 #堆栈,后进先出 a=[10 ...

  7. CSS命名规范参考及书写注意事项

    CSS书写顺序 *{ /*显示属性*/ display position float clear cursor … /*盒模型*/ margin padding width height /*排版*/ ...

  8. 解决Iframe session过期,登录界面无法全页刷新

    在登录界面增加如下js代码: <script language=”JavaScript”> if (window != top) top.location.href = location. ...

  9. 在web.config中配置httpHandlers节点是的说明

    <system.web> <httpHandlers> <add verb="*" path="*.lcj" type=" ...

  10. 数据立方体----维度与OLAP

    前面的一篇文章——数据仓库的多维数据模型中已经简单介绍过多维模型的定义和结构,以及事实表(Fact Table)和维表(Dimension Table)的概念.多维数据模型作为一种新的逻辑模型赋予了数 ...