1、Python时间模块

import time
import datetime # 一: time模块 ##############
# 1、时间戳
print (time.time()) # 1661827966.8915884 # 2、格式化的字符串形式:2020-11-11 11:11:11
print (time.strftime('%Y-%m-%d %H:%M:%S %A'))
print (time.strftime('%Y-%m-%d %X %A'))
print (time.strftime('%Y-%m-%d %X'))
print (time.strftime('%x %X %A'))
print (time.strftime('%Y'))
print (time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))) # 2022-08-30 10:52:46 Tuesday
# 2022-08-30 10:52:46 Tuesday
# 2022-08-30 10:52:46
# 08/30/22 10:52:46 Tuesday
# 2022
# 2022-08-30 10:52:46 # 3、结构化时间
res = time.localtime()
print (res)
print (res.tm_year)
print (res.tm_mon) # time.struct_time(tm_year=2022, tm_mon=8, tm_mday=30, tm_hour=10, tm_min=52, tm_sec=46, tm_wday=1, tm_yday=242, tm_isdst=0)
# 2022
# 8 # 二: datetime模块 ##############
res = datetime.datetime.now()
print (res) # 当前时间
print (res.replace(microsecond=0)) # 去除微妙
res = datetime.datetime.now() + datetime.timedelta(days=12) # 当前时间加12天
print (res)
print (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) # 2022-08-30 10:58:18.081424
# 2022-08-30 10:58:18
# 2022-09-11 10:58:18.081424
# 2022-08-30 10:58:18 # 三: 时间类型转换
# 时间戳 ---localtime/gmtime---> 结构化时间 ---strftime---> 格式化的字符串时间
# 时间戳 <---mktime---------- 结构化时间 <---strptime--- 格式化的字符串时间 # 时间戳转字符串: (时间戳单位是秒)
timestamp = 1668139932
timestr = time.strftime('%Y-%m-%d %X', time.localtime(timestamp))
print('秒级时间戳转为格式化的字符串时间:' + timestr) # 时间戳转字符串: (时间戳单位是毫秒,需要先转成秒级时间戳)
timestamp = 1668139932000
timestamp = timestamp/1000
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(timestamp))
print('毫秒级时间戳转为格式化的字符串时间:' + time_str) # time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
time_str = '2022-11-11 12:12:12'
time_array = time.strptime(time_str,'%Y-%m-%d %X')
timestamp = int(time.mktime(time_array))
print(f'time_str = {time_str}')
print(f'time_array = {time_array}')
print(f'timestamp = {timestamp}')
print ('格式化的字符串时间转为时间戳(秒级):' + str(timestamp)) # 秒级时间戳转为格式化的字符串时间:2022-11-11 12:12:12
# 毫秒级时间戳转为格式化的字符串时间:2022-11-11 12:12:12
# time_str = 2022-11-11 12:12:12
# time_array = time.struct_time(tm_year=2022, tm_mon=11, tm_mday=11, tm_hour=12, tm_min=12, tm_sec=12, tm_wday=4, tm_yday=315, tm_isdst=-1)
# timestamp = 1668139932
# 格式化的字符串时间转为时间戳(秒级):1668139932 # 四: 其它时间格式
print(time.asctime()) # 和time.strftime()功能一样,但是格式固定,不能自定义格式
print(time.ctime()) # 直接把时间戳转为固定的字符串格式,但是格式固定,不能自定义格式.括号中不给值默认把当前时间戳转为字符串格式
print(datetime.datetime.now())
print(datetime.datetime.utcnow()) # 标准时间
print(datetime.datetime.fromtimestamp(1668139932)) # 直接把时间戳转为格式化的时间字符串,但是格式固定,不能自定义格式 # Tue Aug 30 11:34:24 2022
# Tue Aug 30 11:34:24 2022
# 2022-08-30 11:34:24.698108
# 2022-08-30 03:34:24.698108
# 2022-11-11 12:12:12

2、python获取秒级时间戳与毫秒级时间戳、微秒级时间戳

import time
import datetime
import calendar # 获取时间戳
t = time.time()
t_s = int(t) # 秒(s) second
t_ms= int(round(t * 1000)) # 毫秒(ms) millisecond
t_μs= int(round(t * 1000000)) # 微妙(μs) microsecond # 将秒级时间戳转为日期
ts2dt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(t_s))
# 将时间格式转成另一种时间格式
dt_new1 = datetime.datetime.strptime(ts2dt,'%Y-%m-%d %H:%M:%S').strftime('%Y/%m/%d %H:%M:%S')
dt_new2 = datetime.datetime.strptime(ts2dt,'%Y-%m-%d %H:%M:%S').strftime('%m/%d/%Y %H:%M')
dt_new3 = datetime.datetime.strptime(dt_new2,'%m/%d/%Y %H:%M').strftime('%Y-%m-%d %H:%M:%S') # 由字符串格式转化为日期格式的函数为: datetime.datetime.strptime(t_str,"%Y-%m-%d %H:%M:%S")
# 由日期格式转化为字符串格式的函数为: datetime.datetime.strftime(t_date,"%Y-%m-%d %H:%M:%S")
# String转时间格式
t_str = '2022-03-25 11:23:03'
str2time = datetime.datetime.strptime(t_str, "%Y-%m-%d %H:%M:%S")
# 时间格式转String
time2str = str2time.strftime("%Y-%m-%d %H:%M:%S") # 格式转化
t_str_2 = '20220325'
str2time_2 = datetime.datetime.strptime(t_str_2, "%Y%m%d")
time2str_2 = str2time_2.strftime("%Y%m%d")
t_str_3 = '2022-03-25'
t_date =t_str_3.replace("-","") # 转结构体时间struct_time
# 日期时间转结构体
dt2st = time.strptime('2022-03-25 11:23:03', '%Y-%m-%d %H:%M:%S')
# 时间戳转结构体
ts2st = time.localtime(1648178583) print (f'原始时间值 = {t}')
print (f'秒级时间戳(10位) = {t_s}')
print (f'毫秒级时间戳(13位) = {t_ms}')
print (f'微秒级时间戳(16位) = {t_μs}')
print (f'-----------------------------')
print (f'秒级时间戳转为日期 = {ts2dt}')
print (f'时间格式转换1 = {dt_new1}')
print (f'时间格式转换2 = {dt_new2}')
print (f'时间格式转换3 = {dt_new3}')
print (f'-----------------------------')
print (f'str2time = {str2time} , type = {type(str2time)}')
print (f'time2str = {time2str} , type = {type(time2str)}')
print (f'str2time_2 = {str2time_2} , type = {type(str2time_2)}')
print (f'time2str_2 = {time2str_2} , type = {type(time2str_2)}')
print (f't_date = {t_date} , type = {type(t_date)}')
print (f'-----------------------------')
print (f'日期时间转结构体 = {dt2st}')
print (f'时间戳转结构体 = {ts2st}') # 返回
原始时间值 = 1648189220.4241912
秒级时间戳(10位) = 1648189220
毫秒级时间戳(13位) = 1648189220424
微秒级时间戳(16位) = 1648189220424191
-----------------------------
秒级时间戳转为日期 = 2022-03-25 14:20:20
时间格式转换1 = 2022/03/25 14:20:20
时间格式转换2 = 03/25/2022 14:20
时间格式转换3 = 2022-03-25 14:20:00
-----------------------------
str2time = 2022-03-25 11:23:03 , type = <class 'datetime.datetime'>
time2str = 2022-03-25 11:23:03 , type = <class 'str'>
str2time_2 = 2022-03-25 00:00:00 , type = <class 'datetime.datetime'>
time2str_2 = 20220325 , type = <class 'str'>
t_date = 20220325 , type = <class 'str'>
-----------------------------
日期时间转结构体 = time.struct_time(tm_year=2022, tm_mon=3, tm_mday=25, tm_hour=11, tm_min=23, tm_sec=3, tm_wday=4, tm_yday=84, tm_isdst=-1)
时间戳转结构体 = time.struct_time(tm_year=2022, tm_mon=3, tm_mday=25, tm_hour=11, tm_min=23, tm_sec=3, tm_wday=4, tm_yday=84, tm_isdst=0)

3、获取当前日期时间

dt    = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
dt_ms = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') # 含微秒的日期时间
dt_year = datetime.datetime.now().strftime('%Y')
dt_month = datetime.datetime.now().strftime('%m')
dt_day = datetime.datetime.now().strftime('%d')
dt_yyyymm = datetime.datetime.now().strftime('%Y%m')
dt_yyyymmdd1 = datetime.datetime.now().strftime('%Y%m%d')
dt_yyyymmdd2 = datetime.datetime.now().strftime('%Y-%m-%d')
dt_yyyymmdd3 = datetime.datetime.now().strftime('%Y/%m/%d') print (f'当前时间 = {dt}')
print (f'当前时间带微秒 = {dt_ms}')
print (f'当前时间年份 = {dt_year}')
print (f'当前时间月份 = {dt_month}')
print (f'当前时间日期 = {dt_day}')
print (f'当前时间年月 = {dt_yyyymm}')
print (f'当前时间年月日 = {dt_yyyymmdd1}')
print (f'当前时间年月日 = {dt_yyyymmdd2}')
print (f'当前时间年月日 = {dt_yyyymmdd3}') # 返回值
当前时间 = 2022-03-24 17:57:37
当前时间带微秒 = 2022-03-24 17:57:37.403094
当前时间年份 = 2022
当前时间月份 = 03
当前时间日期 = 24
当前时间年月 = 202203
当前时间年月日 = 20220324
当前时间年月日 = 2022-03-24
当前时间年月日 = 2022/03/24

4、获取今日零点时间

# 日期
currentDate = datetime.date.today()
yesterdayDate = datetime.date.today() + datetime.timedelta(days=-1)
daybeforeyesDate= datetime.date.today() + datetime.timedelta(days=-2)
tomorrowDate = datetime.date.today() + datetime.timedelta(days=1)
dayaftertomDate = datetime.date.today() + datetime.timedelta(days=2) # 日期时间
currentDatetime = datetime.datetime.now()
yesterdayDatetime = currentDatetime + datetime.timedelta(days=-1)
tomorrowDatetime = currentDatetime + datetime.timedelta(days=1) # 日期零点 (三种方法)
currentDate_0 = datetime.date.today().strftime("%Y-%m-%d %H:%M:%S")
currentTime_0 = time.strftime("%Y-%m-%d 00:00:00")
currentNow_0 = datetime.datetime.now().strftime('%Y-%m-%d 00:00:00') print (f'今天日期 = {currentDate}')
print (f'昨天日期 = {yesterdayDate}')
print (f'前天日期 = {daybeforeyesDate}')
print (f'明天日期 = {tomorrowDate}')
print (f'后天日期 = {dayaftertomDate}')
print (f'当前时间 = {currentDatetime}')
print (f'当前时间往前24小时 = {yesterdayDatetime}')
print (f'当前时间往后24小时 = {tomorrowDatetime}')
print("datetime.date - 今日0点 = %s" % currentDate_0)
print("time - 今日0点 = %s" % currentTime_0)
print("now - 今日0点 = %s" % currentNow_0) # 返回
今天日期 = 2022-03-24
昨天日期 = 2022-03-23
前天日期 = 2022-03-22
明天日期 = 2022-03-25
后天日期 = 2022-03-26
当前时间 = 2022-03-24 18:24:03.454874
当前时间往前24小时 = 2022-03-23 18:24:03.454874
当前时间往后24小时 = 2022-03-25 18:24:03.454874
datetime.date - 今日0点 = 2022-03-24 00:00:00
time - 今日0点 = 2022-03-24 00:00:00
now - 今日0点 = 2022-03-24 00:00:00

5、获取昨上周一,下周一,上个月初,月末日期时间等

# 获取本周第一天和本周最后一天日期
today = datetime.date.today()
weekday = today.weekday() # 今天实际周几 = today.weekday() + 1
currentWeekday1 = today + datetime.timedelta(days=-weekday)
currentWeekday7 = today + datetime.timedelta(days=-weekday + 6)
# 获取上周第一天和上周最后一天日期
lastWeekday1 = today + datetime.timedelta(days=-weekday - 7)
lastWeekday7 = today + datetime.timedelta(days=-weekday - 1)
# 获取下周第一天和下周最后一天日期
nextWeekday1 = today + datetime.timedelta(days=-weekday + 7)
nextWeekday7 = today + datetime.timedelta(days=-weekday + 13) # 获取本月第一天和最后一天日期
now = datetime.datetime.now()
currentMonthBegin = datetime.datetime(now.year, now.month, 1)
currentMonthEnd = datetime.datetime(now.year, now.month, calendar.monthrange(now.year, now.month)[1])
# 获取上个月第一天和最后一天日期
lastMonthEnd = currentMonthBegin + datetime.timedelta(days=-1)
lastMonthBegin = datetime.datetime(lastMonthEnd.year, lastMonthEnd.month, 1)
# 获取下个月第一天和最后一天日期
nextMonthBegin = currentMonthEnd + datetime.timedelta(days=1)
nextMonthEnd = datetime.datetime(nextMonthBegin.year, nextMonthBegin.month, calendar.monthrange(nextMonthBegin.year, nextMonthBegin.month)[1]) # 获取本季第一天和最后一天
month = (now.month - 1) - (now.month - 1) % 3 + 1
this_quarter_start = datetime.datetime(now.year, month, 1)
this_quarter_end = datetime.datetime(now.year, month+2, calendar.monthrange(now.year, now.month)[1])
# 获取上季第一天和最后一天
last_quarter_end = this_quarter_start + datetime.timedelta(days=-1)
last_quarter_start = datetime.datetime(last_quarter_end.year, last_quarter_end.month - 2, 1)
# 获取下季季第一天和最后一天
next_quarter_start = this_quarter_end + datetime.timedelta(days=1)
next_quarter_end = datetime.datetime(next_quarter_start.year, next_quarter_start.month + 2, calendar.monthrange(next_quarter_start.year, next_quarter_start.month+2)[1]) # 获取本年第一天和最后一天
this_year_start = datetime.datetime(now.year, 1, 1)
this_year_end = datetime.datetime(now.year + 1, 1, 1) + datetime.timedelta(days=-1)
# 获取去年第一天和最后一天
last_year_end = this_year_start - datetime.timedelta(days=1)
last_year_start = datetime.datetime(last_year_end.year, 1, 1)
# 获取明年第一天和最后一天
next_year_start = this_year_end + datetime.timedelta(days=1)
next_year_end = datetime.datetime(next_year_start.year + 1, 1, 1) + datetime.timedelta(days=-1) """ 注:
calendar.monthrange(year,month)
传入两个值:一个是当前的年份,另外一个是当前的月份
写法可以是:calendar.monthrange(now.year,now.month) 返回两个整数。
第一个值为该月第一天所在的星期几,对应的数字。0 - 6==>0(星期一)到6(星期日)
第二个值为该月一共几天。
""" print (f'今天日期 = {today}')
print (f'今日周几 = {weekday}')
print (f'本周一日期 = {currentWeekday1}')
print (f'本周日日期 = {currentWeekday7}')
print (f'上周一日期 = {lastWeekday1}')
print (f'上周日日期 = {lastWeekday7}')
print (f'下周一日期 = {nextWeekday1}')
print (f'下周日日期 = {nextWeekday7}')
print (f'-----------------------------')
print (f'本月月初日期 = {currentMonthBegin}')
print (f'本月月末日期 = {currentMonthEnd}')
print (f'上月月初日期 = {lastMonthBegin}')
print (f'上月月末日期 = {lastMonthEnd}')
print (f'下月月初日期 = {nextMonthBegin}')
print (f'下月月末日期 = {nextMonthEnd}')
print (f'------------------------------')
print (f'本季季初日期 = {this_quarter_start}')
print (f'本季季末日期 = {this_quarter_end}')
print (f'上季季初日期 = {last_quarter_start}')
print (f'上季季末日期 = {last_quarter_end}')
print (f'下季季初日期 = {next_quarter_start}')
print (f'下季季末日期 = {next_quarter_end}')
print (f'------------------------------')
print (f'本年度第一天日期 = {this_year_start}')
print (f'本年最后一天日期 = {this_year_end}')
print (f'去年度第一天日期 = {last_year_start}')
print (f'去年最后一天日期 = {last_year_end}')
print (f'明年度第一天日期 = {next_year_start}')
print (f'明年最后一天日期 = {next_year_end}') # 返回值
今天日期 = 2022-03-25
今日周几 = 4
本周一日期 = 2022-03-21
本周日日期 = 2022-03-27
上周一日期 = 2022-03-14
上周日日期 = 2022-03-20
下周一日期 = 2022-03-28
下周日日期 = 2022-04-03
-----------------------------
本月月初日期 = 2022-03-01 00:00:00
本月月末日期 = 2022-03-31 00:00:00
上月月初日期 = 2022-02-01 00:00:00
上月月末日期 = 2022-02-28 00:00:00
下月月初日期 = 2022-04-01 00:00:00
下月月末日期 = 2022-04-30 00:00:00
------------------------------
本季季初日期 = 2022-01-01 00:00:00
本季季末日期 = 2022-03-31 00:00:00
上季季初日期 = 2021-10-01 00:00:00
上季季末日期 = 2021-12-31 00:00:00
下季季初日期 = 2022-04-01 00:00:00
下季季末日期 = 2022-06-30 00:00:00
------------------------------
本年度第一天日期 = 2022-01-01 00:00:00
本年最后一天日期 = 2022-12-31 00:00:00
去年度第一天日期 = 2021-01-01 00:00:00
去年最后一天日期 = 2021-12-31 00:00:00
明年度第一天日期 = 2023-01-01 00:00:00
明年最后一天日期 = 2023-12-31 00:00:00

6、时间计算

"""
datetime.timedelta
用法: datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
这里没有月份的加减操作
""" now = datetime.datetime.now()
# 星期加减
week_add_dt = now + datetime.timedelta(weeks=1)
week_diff_dt = now + datetime.timedelta(weeks=-1)
# 日期加减
day_add_dt = now + datetime.timedelta(days=1)
day_diff_dt = now + datetime.timedelta(days=-1)
# 小时加减
hour_add_dt = now + datetime.timedelta(hours=1)
hour_diff_dt = now + datetime.timedelta(hours=-1)
# 分钟加监
min_add_dt = now + datetime.timedelta(minutes=1)
min_diff_dt = now + datetime.timedelta(minutes=-1) # 两个时间相减
datetime1 = now + datetime.timedelta(hours=-24)
datetime2 = now # 两个时间相差几天,几秒,几小时。
dt_days = (datetime2-datetime1).days
dt_seconds = (datetime2-datetime1).seconds
dt_seconds2 = (datetime2-datetime1).total_seconds() """注意:
.days 是以年月日为单位计算的,没有涉及到时分秒的计算。直接按照日期相差的天数计算。
.seconds 只会计算小时分钟秒 部分之间的差值。如果超过24小时或者前后时间跨天,计算结果就会和预期结果不一致。比如这里相差24小时,秒差值为0。
.total_seconds() 才是计算两个时间戳之间的实际相差秒值。比如这里的秒差值86400秒。
""" print (f'当前时间 = {now}')
print (f'当前时间加一周 = {week_add_dt}')
print (f'当前时间减一周 = {week_diff_dt}')
print (f'当前时间加一天 = {day_add_dt}')
print (f'当前时间减一天 = {day_diff_dt}')
print (f'当前时间加一小时 = {hour_add_dt}')
print (f'当前时间减一小时 = {hour_diff_dt}')
print (f'当前时间加一分钟 = {min_add_dt}')
print (f'当前时间减一分钟 = {min_diff_dt}')
print (f'------------------------------')
print (f'两个时间相差天数 = {dt_days}')
print (f'两个时间相差秒数 = {dt_seconds}')
print (f'两个时间相差秒数2 = {dt_seconds2}') # 返回
当前时间 = 2022-03-25 14:47:22.495714
当前时间加一周 = 2022-04-01 14:47:22.495714
当前时间减一周 = 2022-03-18 14:47:22.495714
当前时间加一天 = 2022-03-26 14:47:22.495714
当前时间减一天 = 2022-03-24 14:47:22.495714
当前时间加一小时 = 2022-03-25 15:47:22.495714
当前时间减一小时 = 2022-03-25 13:47:22.495714
当前时间加一分钟 = 2022-03-25 14:48:22.495714
当前时间减一分钟 = 2022-03-25 14:46:22.495714
------------------------------
两个时间相差天数 = 1
两个时间相差秒数 = 0
两个时间相差秒数2 = 86400.0 # 由于datetime.timedelta没有月份的加减操作,需要自己定义一个函数来计算
from datetime import date,timedelta def add_month(d,md):
"""
:param d: 开始日期
:param md: 增加的月份数
:return: 增加月份后的日期
"""
yd = md // 12
m = d.month + md % 12
if m != 12:
yd += m // 12
m = m % 12
return date(d.year + yd,m,d.day)

【Python】python笔记:时间模块/时间函数的更多相关文章

  1. python学习笔记十——模块与函数

    第五章 模块与函数 5.1 python程序的结构 函数+类->模块              模块+模块->包                 函数+类+模块+包=Python pyth ...

  2. Python学习笔记-argparse模块

    Python学习笔记-argparse模块 optparseargparse 昨天学习了一个简单的端口扫描器的脚本,其中涉及到了optparse模块,网上关于此模块的介绍已有很多,但这个模块已经不更新 ...

  3. python学习笔记_week5_模块

    模块 一.定义: 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能), 本质就是.py结尾的python文件(文件名:test.py,对应模块名:test) 包:用来从逻辑上 ...

  4. python 学习笔记 -logging模块(日志)

    模块级函数 logging.getLogger([name]):返回一个logger对象,如果没有指定名字将返回root loggerlogging.debug().logging.info().lo ...

  5. Python学习笔记-常用模块

    1.python模块 如果你退出 Python 解释器并重新进入,你做的任何定义(变量和方法)都会丢失.因此,如果你想要编写一些更大的程序,为准备解释器输入使用一个文本编辑器会更好,并以那个文件替代作 ...

  6. python学习笔记五 模块上(基础篇)

    模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...

  7. python学习笔记013——模块

    1 模块module 1.1 模块是什么 模块是包含一系列的变量,函数,类等程序组 模块通常是一个文件,以.py结尾 1.2 模块的作用 1. 让一些相关的函数,变量,类等有逻辑的组织在一起,使逻辑更 ...

  8. Python学习笔记 - day9 - 模块与包

    模块与包 一个模块就是一个包含了Python定义和声明的文件,文件名就是模块名加上.py的后缀,导入一个py文件,解释器解释该py文件,导入一个包,解释器解释该包下的 __init__.py 文件,所 ...

  9. python学习笔记(八)-模块

    大型python程序以模块和包的形式组织.python标准库中包含大量的模块.一个python文件就是一个模块.1.标准模块 python自带的,不需要你安装的2.第三方模块 需要安装,别人提供的. ...

  10. Python学习笔记之模块与包

    一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打 ...

随机推荐

  1. 【人脸识别】OpenCV获取自己的图像

    思路:先获取10000张自己的图像,然后通过CNN神经网络进行学习. 第一步:先获取自己的脸的数据.如何做? 代码如下: import cv2 import os import sys import ...

  2. Ryght 在 Hugging Face 专家助力下赋能医疗保健和生命科学之旅

    本文是 Ryght 团队的客座博文. Ryght 是何方神圣? Ryght 的使命是构建一个专为医疗保健和生命科学领域量身定制的企业级生成式人工智能平台.最近,公司正式公开了 Ryght 预览版 平台 ...

  3. 数据可视化技术应用:“Python环境管理器-Anaconda”的安装

    目录 1. Python环境管理器:Anaconda 2. 在Windows上安装Anaconda 3. Anaconda和Miniconda的区别 1. Python环境管理器:Anaconda P ...

  4. Js实现抽奖转盘,和点击返回某个模块顶部的功能

    最近写了几个转盘抽奖的活动页面: 1.设定旋转的角度: HTML部分:转盘代码: <div class="lottery"> <div class="l ...

  5. OpenVoiceV2本地部署教程,苹果MacOs部署流程,声音响度统一,文字转语音,TTS

    最近OpenVoice项目更新了V2版本,新的模型对于中文推理更加友好,音色也得到了一定的提升,本次分享一下如何在苹果的MacOs系统中本地部署OpenVoice的V2版本. 首先下载OpenVoic ...

  6. js文字处理两端展示中间省略号

    点击查看代码 function ellipsisText(longText, displayLength) { // 确保显示长度至少包含省略号的3个字符 if (displayLength < ...

  7. 4G LTE/EPC UE 的附着与去附着

    目录 文章目录 目录 UE 附着 UE 与 MME 建立 NAS 连接 UE 附着协议全景 UE 附着流程 UE 去附着 UE 侧发起的去附着 MME 发起的去附着 HSS 发起的去附着 UE 附着 ...

  8. pageoffice6 版本实现在线打开word 文件禁止保存、禁止另存、禁止打印的需求

    在实际项目需求中,有时需要限制用户的保存.另存.打印文件操作,实现此效果只需在OnPageOfficeCtrlInit或AfterDocumentOpened事件中调用js设置PageOffice控件 ...

  9. 前端使用 Konva 实现可视化设计器(11)- 对齐效果

    这一章补充一个效果,在多选的情况下,对目标进行对齐.基于多选整体区域对齐的基础上,还支持基于其中一个节点进行对齐. 请大家动动小手,给我一个免费的 Star 吧~ 大家如果发现了 Bug,欢迎来提 I ...

  10. C# Socket 封包 拆包 ProtoBuf 的使用

    //这是消息头包,消息头包大小是固定的, //每次传输都要先传消息头,在传消息体 enum EnumMsgType:消息类型 long PackgeSize:包大小 long TotalPackage ...