python中的时间与数学计算

【时间计算1】

#coding:utf-8
import time
#tmie() 时间库
#time.time()得到距离1970年1月1日至今的秒数
print("当前时间的时间数值为:%f"% time.time())
'''
localtime()能得到本地时间,转换为计算机能够识别的时间格式,
以元组的形式存放
tm_year=2019,tm_mon=8,tm_mday+29,tm_hour=13,tm_min=59,tm_sec=31
tm_wday=3  星期几 (0-6) 0代表周一
tm_yday=241  当前是一年中的第几天
tm_isdst=0  是否为夏令时节  -1不详 1是 0否
'''
#当地时间
print(time.localtime())
#伦敦时间
print(time.gmtime())

#time.mktime()参数是一个struct_time
t=(2019,8,29,14,05,55,3,241,0)#最后三个 星期几 第几天 不是夏令时
print(time.mktime(t))
print(time.mktime(time.localtime()))
#time.asctime()可将struct_time的时间转换为固定格式的时间输出
#'Thu Aug 29 14:07:50 2019'
print(time.asctime())
print(time.asctime(time.localtime()))

#ctime() 把一个按秒数计算的浮点数作为参数,可以得到一个time.asctime()的时间
#如果未给参数,以time.time()作为参数
print(time.ctime(1567058870.0))
print(time.ctime())
print('----')
#time.sleep()让程序睡眠 单位为秒
def sleep_time():
    print(time.ctime())
    time.sleep(5)
    print(time.ctime())
sleep_time()
#strftime(format[,t])
#t=(2019,8,29,14,5,55,3,241,0)
t=time.mktime(t)
print(time.strftime('%b %d %Y %H:%M:%S',time.gmtime(t)))
#只指定时间格式,不放入时间参数,是会以local.time()作为参数
print(time.strftime('%H:%M:%S'))



'''
python中时间日期格式化符号:
%H:%M:%S    时分秒
%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 当前时区的名称
%% %号本身
'''

【时间计算2】

#coding:utf-8
from datetime import datetime
#timedalte 是datetime中的一个对象,该对象表示两个时间的差值
from datetime import timedelta
import time
import calendar

#获取当前时间(包含日期)
print(datetime.now())
#只是时间
print(datetime.now().time())
#显示类型
print(type(datetime.now()))
#获取当前日期
print(datetime.now().date())
print(type(datetime.now().date()))
#获取当前时间的tuple元组
print(datetime.now().timetuple())
#time.struct_time(tm_year=2018,tm_mday=1,tm_min=21,tm_sec=5,)
print(datetime.now().timetuple().tm_year)
print(datetime.now().timetuple().tm_mon)
print(datetime.now().timetuple().tm_mday)
print(datetime.now().timetuple().tm_hour)
print(datetime.now().timetuple().tm_min)
print(datetime.now().timetuple().tm_sec)
print(datetime.now().timetuple().tm_wday)# 0-6 0是周一,6是周日
print(datetime.now().timetuple().tm_yday)# 一年中的第几天
print(datetime.now().timetuple().tm_isdst)# -1 是否为夏令时 1是 0否 -1未知

#格式化日期和时间
print(datetime.now().strftime("%Y-%m-%d  %H:%M:%S"))
print('----')
#时间移动
'''
使用datatime.timedelta这个方法来前后移动时间。
可以用的参数有weeks,days,hours,minutes,seconds,microseconds.
使用days=1代表后一天,days=-1代表前一天,其他参数也一样
'''
print(datetime.now()+timedelta(days=1))#将当前日期向后推移一天
#获取两个时间的时间差
nowtime=datetime.now()
utctime=datetime.utcnow()
print( nowtime-utctime )#以时:分:秒的形式输出北京时间与世界标准时的差值
print((nowtime-utctime).total_seconds())#以秒计算以上时间差值
#时间格式转换
#datetime转str格式
print( datetime.now())
print( datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
print( datetime.now().strftime("%Y-%m-%d"))#2019-08-29
print( datetime.now().strftime("%H:%M:%S"))#16:08:23
#str格式转datetime
print(datetime.strptime("2018-10-08 09:00:00","%Y-%m-%d %H:%M:%S"))
print(type(datetime.strptime("2018-10-08 09:00:00","%Y-%m-%d %H:%M:%S")))
#datetime转timestamp
now=datetime.now()
print(now)
print(time.mktime(now.timetuple()))#mktime:将时间转换为自1970年1月1日以来持续时间的秒数,发生错误时返回-1
#timestamp转datatime
print(datetime.fromtimestamp(1538959902.0))#输出从1970年以来所过该秒数时所代表的时间

#Calendar模块有很广泛的方法用来处理年历和月历
print("2019年的年历是:")
print(calendar.prcal(2019))
#某月的
cal=calendar.month(2019,8)
print("2019年8月的月历是:")
print(cal)

【字符串长度处理】

#coding:utf-8
#格式化输出:字符串的格式化输出
string='hello'
#%s的打印结果为string变量即hello
print("string=%s"% string)


#%2s意思是字符串长度为2,但是原字符串长度超过2时,按照原字符串打印
print("string=%2s"% string)
#%7s意思是字符串长度为7,如果字符串长度不够,会在前面补空格
print("string=%7s"% string)
#%-7s的意思是字符串长度为7,如果字符串长度不够,会在后面补空格
print("string=%-7s"% string)
#%.2s取字符串的前两位
print("string=%.2s"% string)
#%.7s取字符串的前七位,如果不够七位就正常取
print("string=%.7s"% string)
#%7.2s意思是字符串长度为7,但只取原字符串的前两位,所以在前面会补空格
print("string=%7.2s"% string)
#和上面的一样,只是写法不同
print("string=%*.*s"%(7,2,string))

【数据处理1】

#coding:utf-8
#整数的格式化输出
from test import test_numeric_tower
num=14
#正常输出num
print("num=%d"% num)
#整数的位数为1位,但是原数据超过一位时,按原数据输出
print("num=%1d"% num)
#整数的位数为3位,但是原数据不足三位时,会在数据前补空格
print("num=%3d"% num)
#整数的位数为3位,但是原数据不足三位时,会在数据后面补空格
print("num=%-3d!"% num)
#整数的位数为5位,如果原数据不足5位,会在前面补0
print("num=%05d!"% num)
#取数据的前三位,如果不够的话,会在前面补0
print("num=%.3d"% num)
print("num=%.000003d"% num)#
#%5.3是两种补齐方式的结合,当整数位数不够3位时,优先补0,但是还是不够5位,所以会在左侧补空格
print("num=%5.3d"% num)
print("num=%05.3d"% num)#输出00014
print("num=%*.*d"%(5,3,num))#输出__014

【数据处理2】

#coding:utf-8
import math
#math.pi圆周率 %f默认是小数点后两位
print("PI=%f"% math.pi)
#输出的数据占9位,小数点也算一位,不够的在后面补空格
print("PI=%9f"% math.pi)
#03.指的是小数点后不显示数据,即取整,不够x位补0
print("PI=%03.f"% math.pi)
#6.3f指的是数据长度为6位,精确到小数点后3位,不够6位的在最前面补空格
print("PI=%6.3f"% math.pi)
print("PI=%-6.3f!"% math.pi)
print("PI=%*.*f"% math.pi)

【正常输出单引号与双引号】

#coding:utf-8
#python中字符串是用''或者""所包括的
#I don't know  字符串中转义符\   \'会正常输出'   \"会正常输出"
strA='I don\'t know'#strA="I don\'t know"
print(strA)
#字符串中的换行\n
strB='Python是世界上最好的语言,\n大家要好好学'
print(strB)
print('字符串可以通过下标的方式进行查询')
strC='welcome to newyork'
print(len(strC))
print('str[0]='strC[0])
print('str[-1]='strC[-1])
#python中的字符串的值是否可以更改
print('strC[0]=\'x\',这样写会出错')

【ASCII码的应用、大小写判断】

#coding:utf-8



#
la='python'
print(tuple(la))
print(list(la))
#
print(ord('慧'))
print(ord('u'))
#print(ord('A'))
#已知ASCII码可以得到字符串
print(chr(24935))
#得到字符串中某个字符的下标
print(la.index('t'))
print('y' in la)

#取到整个字符串中最大的那个字符
print(max(la))
print(min(la))
str='  aabcd  '
print(str*2)
print(str.strip())#去除字符串首尾的空格
#判断是不是为全英文
print(str.isalpha())#返回一个bool类型
#大写
print(str.upper())
#小写
print(str.lower())
str2='m/n/a/b'
print(str2.split("/"))#以某个字符为分隔符将字符串转换为列表
print(str2.split("/")[2])#str2.split("|")是一个列表

str3='QWERDF'
print(str3.isupper())
print(str3.islower())

【强制类型转换、常见数学运算】

#coding:utf-8
import random
import math
import operator
#取随机数
x=[7,5,43,21,67,85]
print(random.choice(x))
#从0-10中取随机数
print(random.choice(range(0,11)))
print('--------')
print(random.uniform(1,10))#取出来的是小数
print(random.uniform(1.5,10.8))#取出来的是小数
print(random.randint(1,10))#取出来的是整数
print(random.random())#随机取一个0-1之间的小数
print(random.choice('today'))#可以随机选取某个元素
print(random.randrange(0,100,2))#随机生成0-100之间的数,间隔为2
print('----')
a=[1,2,3,4,5,6,7]
print(random.shuffle(a))#将传入的列表打乱
print(a)
#与数字相关的操作
i=13.14
j=521
print(int(13.14))#强转为整型
print(float(j))#强转为浮点型
print(math.ceil(i))#向上取整
print(math.floor(i))#向下取整
k=-666
print(abs(k))#取绝对值
print(max(1,2,3,4,5))#找到最大值
print(min(1,2,3,4,5))#找到最小值
print(pow(3,2))#3的2次方
print(math.sqrt(16))#开平方根
#27开三次方根
print(pow(27,1/3))#27的1/3次方
c=12.345564
#取两位小数 12.34
print(int(c*100)/100)
print('----')
#以下返回bool型
print(operator.gt(1,2))#greater than  1比2大吗
print(operator.ge(1,2))#greater equal  1大于或等于2么
print(operator.eq(1,2))#equal  1等于2么
print(operator.le(1,2))#less equal  1小于或等于2么
print(operator.lt(1,2))#less than  1小于2么
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,417评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,921评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,850评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,945评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,069评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,188评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,239评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,994评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,409评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,735评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,898评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,578评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,205评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,916评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,156评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,722评论 2 363
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,781评论 2 351

推荐阅读更多精彩内容

  • 一、PyCharm的基本使用1.1、注释:为了方便自己或者其他人查看单行注释:用 # 号单行注释多行注释: 用 ...
    IIronMan阅读 8,850评论 3 18
  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,735评论 0 10
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,167评论 0 3
  • 缘起,缘落就在一瞬间,就像尘埃掀起了飞扬,瞬间化为乌有,整个画面定格在回忆。那么多的点滴,偶然的相遇,回眸的眼神,...
    青670217阅读 281评论 2 9
  • 年轻人存款的战略意义 新纪元金服小编发现,最近“27岁的我没有存款”成为大家热议的话题。一篇普通的文章刺痛了不...
    f2b21766f67e阅读 759评论 0 5