python软件开发规范时间 随机模块

规范化开发

配置文件:

bin(程序的执行文件) ---> starts.py

import sys
import os
BASE_PATH = os.path.dirname(os.path.dirname(__file__))
sys.path.append(BASE_PATH)
from core import src
if __name__ == '__main__':
    src.run()

conf(配置文件) ---> settings.py

一般轻易 不改变 一般存放 静态变量

core(主逻辑文件) ---> src.py

登录 注册 等等

db(数据文件) ---> register

注册用户数据

lib(库文件,公共组件 辅助功能文件) ---> common

装饰器 加密 loog日志函数

log(日志文件) ---> log20196281059.log

系统日志 生活日志

README(说明文档)

import sys
import os
BASE_PATH = os.path.dirname(os.path.dirname(__file__))
sys.path.append(BASE_PATH)
from core import src
if __name__ == '__main__':
    src.run()
要 那个 函数 变量 导 那个
from 文件夹 import py文件

py文件.变量 函数名 的方式 导入此函数 变量

time模块

与时间相关的模块

三种形式:

  1. 时间戳:time.time()时差,计时
  2. 人类看得懂的时间,格式化时间.2019-6-28 12:00
  3. 结构化时间:python语言使用的,解释器使用的
import time

print(time.time()) # 1561707352.6777651

# 格式化时间:
# 字符串类型
print(time.strftime("%Y-%m-%d %H:%M:%s"))  # 2019-06-28 15:36:32
print(time.strftime("%y-%m-%d %H:%M:%s  %A")) # 19-06-28 15:36:32  Friday
ret = time.strftime("%Y{}%m{}%d{} %H:%M:%s")
print(ret) #  2019{}06{}28{} 15:36:32
print(ret.format('年','月','日')) # 2019年06月28日 15:36:32

print(time.localtime()) # time.struct_time(tm_year=2019,tm_mon=6,tm_mday=28,tm_hour=15,tm_min=36,tm_sec=32,tm_wday=4,tm_yday=179,tm_isdst=0)
e(st)  # 转成时间戳
print(timestamp)

间的转换列题

# 时间戳转化成格式化时间
import time
st = time.localtime(8340768 可以直接输时间戳) # 转成结构化时间
print(st)#命名元祖
ft = time.strftime("%Y-%m-%d %H:%M:%s") # 转成格式化时间
print(ft)

# 格式化时间转化成时间戳
import time
date = input("请输入X年X月X日:").strip()
#2019-5-9
st = time.strptime(date,"%Y-%m-%d")  # 转成结构化时间 命名元祖

timestamp = time.mktime(st)  # 转成时间戳
print(timestamp)

列题
import time
date = input("请输入X年X月X日:").strip()
#2019-5-9
st = time.strptime(date,"%Y-%m-%d")  # 转成结构化时间 命名元祖
print(st.tm_yday)#多少天

datetime模块 跳转时间

import datetime
# from datetime import datetime
time_Now = datetime.datetime.Now()
print(str(time_Now),type(time_Now)) # 2019-06-28 15:46:50.525403 <class 'datetime.datetime'>

print(datetime.datetime.Now() + datetime.timedelta(weeks=3)) # 2019-07-19 15:47:11.392616
print(datetime.datetime.Now() + datetime.timedelta(weeks=-4))  # 2019-05-31 15:47:11.400563
print(datetime.datetime.Now() + datetime.timedelta(days=-15))  # 2019-06-13 15:47:11.400563

current_time = datetime.datetime.Now()
print(current_time.replace(year=1979))  # 1979-06-28 15:48:20.118009
print(current_time.replace(year=1989,month=4,day=25)) # 1989-04-25 15:48:20.118009

print(datetime.date.fromtimestamp(1332543543)) # 2012-03-24

random模块 随机

import random
print(random.random()) # 大于0且小于1之间的小数 0.2863669594762567
print(random.uniform(1,6))  # *** 大于1且小于6之间的小数 1.0740112194845455

print(random.randint(1,5))  # 1    5 可以取到  ***
print(random.randrange(1,10,2))  # 顾头不顾尾  ***

print(random.choice(['如花','凤姐','石榴姐',1]))  # ***
print(random.sample(('如花','石榴姐'),3))  # 可以控制元素个数  ***

# 打乱顺序
item = [i for i in range(10)]
random.shuffle(item)
print(item)
  1. collections模块

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...