python标准库

os模块

# python标准库-os
import os

# 当前文件的路径
cwd = os.getcwd()
print(cwd)

# 判断当前路径下是否有文件夹file_dir,没有的话则创建文件夹
file_dir = "test_dir"
if not os.path.exists(file_dir):
    os.mkdir(file_dir)

# 判断路径file_dir下是否有文件file,没有的话则创建文件,并在文件中输入内容
file = "test_file"
if not os.path.exists(f"{file_dir}/{file}"):
    f = open(f"{file_dir}/{file}", 'a')
    f.write('hello os')
    f.close()

# 当前路径下的文件
list_dir = os.listdir("./")
print(list_dir)

# 判断路径file_dir下是否有文件file,有的话则删除文件
file = "test_file"
file_dir = "test_dir"
if os.path.exists(f"{file_dir}/{file}"):
    os.remove(f"{file_dir}/{file}")

# 判断当前路径下是否有文件夹file_dir,有的话则删除文件夹
if os.path.exists(file_dir):
    os.removedirs(file_dir)

math模块

对应代码

import math
# ceil 大于等于X的最小整数
print(math.ceil(3.14))
# floor 小于等于X的最大整数
print(math.floor(3.14))
# 求平方根
print(math.sqrt(16))
# 四舍五入
print(round(3.64))

对应结果

4
3
4.0
4

time模块

import time

# 当前时间,国外的时间格式,比如:Sun Nov  1 16:51:37 2020
print(time.asctime())

# 获取当前时间的时间戳,秒级,值为浮点数格式,比如: 1604220697.679413
print(time.time())

# 元祖的形式返回当前时间
print(time.localtime())

# 第一个参数为时间格式,第二个为时间的元祖形式,未传入则默认为当前时间
print(time.strftime("%Y-%m-%d %H:%M:%S"))

# 返回两天前的时间
time_stamp = time.time()-2*24*60*60
time_tuple = time.localtime(time_stamp)
time_str = time.strftime("%Y-%m-%d %H:%M:%S", time_tuple)
print(time_str)

# 返回两天前的时间,简写
time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()-2*24*60*60))
print(time_str)

对应结果:

Sun Nov  1 18:22:17 2020
1604226137.626116
time.struct_time(tm_year=2020, tm_mon=11, tm_mday=1, tm_hour=18, tm_min=22, tm_sec=17, tm_wday=6, tm_yday=306, tm_isdst=0)
2020-11-01 18:22:17
2020-10-30 18:22:17
2020-10-30 18:22:17

datetime模块下的date

import time
from datetime import date
today = date.today()
print(today)

print(today == date.fromtimestamp(time.time()))

my_birthday = date(today.year, 6, 24)
if my_birthday < today:
    my_birthday = my_birthday.replace(year=today.year + 1)
print(my_birthday)

time_to_birthday = abs(my_birthday - today)
print(time_to_birthday.days)

a = my_birthday.replace(year=today.year + 3)
print(a)

对应结果:

2020-11-02
True
2021-06-24
234
2023-06-24

datetime模块下的datetime

print(datetime.now())
print(datetime.today())
print(datetime.utcnow())
now_time = datetime.now()

print(now_time.date())
print(now_time.time())
print(now_time.timetz())
print(now_time.replace(year=now_time.year + 1))
print(now_time.timestamp())
print(now_time.timetuple())
print(now_time.weekday())

对应结果:

2020-11-02 21:23:09.578051
2020-11-02 21:23:09.578239
2020-11-02 13:23:09.578268
2020-11-02
21:23:09.580165
21:23:09.580165
2021-11-02 21:23:09.580165
1604323389.580165
time.struct_time(tm_year=2020, tm_mon=11, tm_mday=2, tm_hour=21, tm_min=23, tm_sec=9, tm_wday=0, tm_yday=307, tm_isdst=-1)
0

strftime和strptime的使用

from datetime import datetime
import datetime as f_datetime
#将string格式,按照格式化要求"%Y-%m-%d",变成datetime格式。
#datetime格式互相之间可以进行加减乘除计算,计算结果单位是天
today_1 = datetime.strptime("2019-07-02", "%Y-%m-%d")
print(today_1)

#进行日期与日期之间的减法,计算结果单位是天
date1 = datetime.strptime('2019-06-05', "%Y-%m-%d")
date2 = datetime.strptime('2019-05-30', "%Y-%m-%d")
sub_days = date1 - date2  # 得到天数
print(sub_days)

#进行日期与天数之间的减法:计算2019-06-05减去10天之后的日期
days = 10
date1 = '2019-06-05' #string格式
date1 = datetime.strptime(date1, "%Y-%m-%d") #首先变成datetime格式
date2 = date1 + f_datetime.timedelta(days=-10)# 然后就可以进行计算了,得到datetime格式
date3 = date2.strftime("%Y-%m-%d") # 变成string格式
print(date3)

对应结果:

2019-07-02 00:00:00
6 days, 0:00:00
2019-05-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值