python中数值与日期方法

  • 数值
  • 数值格式化
  • 小数位的处理
  • 随机数
  • 日期和时间
  • 日期和时间计算,datetime.timedelta类


数值

数值格式化

实际开发中,将特定数值融入到字符串里面来格式化表现的话,那些细节需要注意:

1.

python时间数字转字符串 python将数字转化为日期_四舍五入


格式化:‘数值:{}’.format()

再python3中可以简化,可以写成f开头的字符串,f是format格式化意思,f’数值‘:{}’。要呈现动态内容时,直接在花括号中写上变量名称。

python时间数字转字符串 python将数字转化为日期_字符串_02


2. 指定显示的格式

指定显示数值类型

'数值:{:f}'.format(a) #{:}冒号前面出现实际的值,冒号后面指定格式,比如希望以浮点型显示,后面就写上f。结果如下
#python3可写成
f'数值:{a:f}'

python时间数字转字符串 python将数字转化为日期_四舍五入_03


还可以在前面加上正负号,前提时这个数原本就是正/负数

python时间数字转字符串 python将数字转化为日期_四舍五入_04


指定以千分位隔开显示

在f前面写上逗号,在指定数值类型符号前写上逗号

python时间数字转字符串 python将数字转化为日期_四舍五入_05


指定精度

# 保留两位小数,且在小数位保留时会自动四舍五入
f'数值:{b:,.2f}' #在逗号后面再加上.2

python时间数字转字符串 python将数字转化为日期_随机数_06

x =18
y =23
'{:.2f}.format(x / y)
# 以百分比形式显示
'{:.2%}'.format(x / y)

python时间数字转字符串 python将数字转化为日期_四舍五入_07

小数位的处理

trunc截断,

import math
math.trunc(b) #小数点后面的戒掉了,保留了整数,没用到四舍五入
math.trunc(123.987)
# 向上取整和向下取整
math.floor(123.123.987)
math.ceil(123.987)
# 四舍五入,全局函数round
ronud(b,2) #后面的2指示四舍五入的位数

python时间数字转字符串 python将数字转化为日期_python时间数字转字符串_08

随机数

python时间数字转字符串 python将数字转化为日期_随机数_09


1.

shuffle:把…变换位置,调动,洗牌,改组,

sample:抽样检验,

lst = list(range(1,11))
# 从列表中获得随机数值,导入random标准库模块
import random
# 随机从列表中选择一些数值。random.choice从特定序列中找出随机值
random.choice(lst)
# 从序列中随机拿三个数random.sample,找出特定数量的序列
random.sample(lst,3)
# 将序列的顺序改变,打乱,random.shuffle,返回结果为空,需要print一下
random.shuffle(lst)

python时间数字转字符串 python将数字转化为日期_四舍五入_10


2.

只是像简单获取一个数值,这个数值是int或float,

# 随机产生一个整数
random.randint(1,10) #1到10之间随机产生一个整数
# 浮点数
random.random #可以不指定范围
# 指定比特位数的随机数
random.getrandbits(5) #获得5个比特位的随机数

python时间数字转字符串 python将数字转化为日期_随机数_11


python时间数字转字符串 python将数字转化为日期_字符串_12


python时间数字转字符串 python将数字转化为日期_随机数_13

日期和时间

python时间数字转字符串 python将数字转化为日期_四舍五入_14


python标准库中专门的包datetime

包中准备了数据类型,

date:只考虑年月日,不管时分秒

time:时分秒

datetime:日期和时间一起处理

import datetime
# datetime模块中有两个常量MAXYEAR,MINYEAR
datetime.MAXYEAR
datetime.MINYEAR
# 今天的日期
today = datetime.date.today() #来自于datetime模块下的date类下的today方法
today.year
today.month
todday.day
today.weekday() #今天是周几,从0开始
today.isoweekday() #按照国际标准定义的周几,从1开始
# 自己构造一个日期,比如说生日.三个参数分别对应年月日
birthdate = datetime.date(2010,3,12)
birthdate.year
birthdate.day
# 只要时间不要年月日
t = datetime.time(15,46,32)
t.hour
t.minute
t.second
# 将日期和时间结合起来
now = datetime.datetime.now()
now.year
now.day
now.second
t = datetime.datetime(1993,3,3,20,33,44)
# 将字符串与日期来回转换
s = '2018-3-15'
type(s) #class 'str'
# 将字符串转换位真实的时间格式
t = datetime.datetime.strptime(s,'%Y-%m-%d) #转换的字符串来自于s。在里面指定月份年份,%Y是第一个位置呈现四位的年份,%m是月份,%d是日期。
# 将时间格式转换为字符串
now = datetime.datetime.now()
txt = now.strftime('%Y/%m%d')
txt

python时间数字转字符串 python将数字转化为日期_随机数_15

日期和时间计算,datetime.timedelta类

timedelta是时间差,时间跨度,一种数据类型

将时间拿出来计算,时间计算不同于数值计算,时间是60进制,

import datetime
d = datetime.datetime(2018,3,5,22,44)
birthdate = datetime.datetime(2016,5,2,19,33,44)
d - birthdate
diff = d - birthdate #diff类型就是timedelta
diff.days #2018年3月5号和216年5月2号之间隔了672天,
diff.seconds
diff.total_seconds() #两个日期中间相隔的秒数
diff.total_seconds() #两个日期中间相隔的总的时间换算为秒数
o = datetime.datetime(2008,8,8,20,8)
# 时间往后推100天
o + datetime.timedelta(days = 100)
# 时间往前推100天
result = d + datetime.timedelta(days=-100)
# 日期以秒为单位改变
d + datetime.timedelta(seconds=3000)

python时间数字转字符串 python将数字转化为日期_四舍五入_16


结果类型:timedelta

datetime.timedelta(672,11416),括号中两个数字来自于timedelta下面的两个属性,

python时间数字转字符串 python将数字转化为日期_字符串_17


实际开发中,照上面的写太麻烦,可以一次性导入包下面的常见类型

# 一次性导入datetime包下面的这些类型
from datetime import date,time,datetime,timedelta
# 就可以直接用这些方法了
timedelta() #时间差


android 开启屏幕 android 打开设置

点击跳转到蓝牙设置界面1.布局文件<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:gravity="center