最后
Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
👉Python所有方向的学习路线👈
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉Python必备开发工具👈
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
👉Python全套学习视频👈
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
👉实战案例👈
学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。
因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。
👉大厂面试真题👈
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
- 本地时间格式:“yyyy-mm-dd hh:mm:ss”,在Python中是"%Y-%m-%d %H:%M:%S"
- 汉字表示格式:“yyyy年mm月dd日 hh时mm分ss秒”,在Python中是“%Y年%m月%d日 %H时%M分%S秒”
指令 | 含意 | 示例 | 备注 |
---|---|---|---|
%a | 当地工作日的缩写。 |
Sun, Mon, …, Sat (en_US);
So, Mo, …, Sa (de_DE)
| (1) |
| %A
| 本地化的星期中每日的完整名称。 |
Sunday, Monday, …, Saturday (en_US);
Sonntag, Montag, …, Samstag (de_DE)
| (1) |
| %w
| 以十进制数显示的工作日,其中0表示星期日,6表示星期六。 | 0, 1, …, 6 | |
| %d
| 补零后,以十进制数显示的月份中的一天。 | 01, 02, …, 31 | (9) |
| %b
| 当地月份的缩写。 |
Jan, Feb, …, Dec (en_US);
Jan, Feb, …, Dez (de_DE)
| (1) |
| %B
| 本地化的月份全名。 |
January, February, …, December (en_US);
Januar, Februar, …, Dezember (de_DE)
| (1) |
| %m
| 补零后,以十进制数显示的月份。 | 01, 02, …, 12 | (9) |
| %y
| 补零后,以十进制数表示的,不带世纪的年份。 | 00, 01, …, 99 | (9) |
| %Y
| 十进制数表示的带世纪的年份。 | 0001, 0002, …, 2013, 2014, …, 9998, 9999 | (2) |
| %H
| 以补零后的十进制数表示的小时(24 小时制)。 | 00, 01, …, 23 | (9) |
| %I
| 以补零后的十进制数表示的小时(12 小时制)。 | 01, 02, …, 12 | (9) |
| %p
| 本地化的 AM 或 PM 。 |
AM, PM (en_US);
am, pm (de_DE)
| (1), (3) |
| %M
| 补零后,以十进制数显示的分钟。 | 00, 01, …, 59 | (9) |
| %S
| 补零后,以十进制数显示的秒。 | 00, 01, …, 59 | (4), (9) |
| %f
| 微秒作为一个十进制数,零填充到 6 位。 | 000000, 000001, …, 999999 | (5) |
| %z
| UTC 偏移量,格式为 ±HHMM[SS[.ffffff]]
(如果是简单型对象则为空字符串)。 | (空), +0000, -0400, +1030, +063415, -030712.345216 | (6) |
| %Z
| 时区名称(如果对象为简单型则为空字符串)。 | (空), UTC, GMT | (6) |
| %j
| 以补零后的十进制数表示的一年中的日序号。 | 001, 002, …, 366 | (9) |
| %U
| 以补零后的十进制数表示的一年中的周序号(星期日作为每周的第一天)。 在新的一年中第一个星期日之前的所有日子都被视为是在第 0 周。 | 00, 01, …, 53 | (7), (9) |
| %W
| 以补零后的十进制数表示的一年中的周序号(星期一作为每周的第一天)。 在新的一年中第一个星期一之前的所有日子都被视为是在第 0 周。 | 00, 01, …, 53 | (7), (9) |
| %c
| 本地化的适当日期和时间表示。 |
Tue Aug 16 21:30:00 1988 (en_US);
Di 16 Aug 21:30:00 1988 (de_DE)
| (1) |
| %x
| 本地化的适当日期表示。 |
08/16/88 (None);
08/16/1988 (en_US);
16.08.1988 (de_DE)
| (1) |
| %X
| 本地化的适当时间表示。 |
21:30:00 (en_US);
21:30:00 (de_DE)
| (1) |
| %%
| 字面的 '%'
字符。 | % | |
时间戳
时间戳一般指的是Unix时间/POSIX时间,从1970-01-01 00:00:00到当前的秒数,一般使用10位或13位表示
datetime
date
属性(只读)
- year:int类型,如2023
- month:int类型,如2
- day::int类型,如21
方法
- today:返回当前日期,转字符串使用iso格式,例如 2023-02-21
- fromtimestamp:从时间戳返回当地时间
- replace:返回一个date,可以通过参数修改year month day,会进行检查,不符合抛异常ValueError
- strftime:按照格式返回字符串
datetime
属性(只读)
- year:int类型,如2023
- month:int类型,如2
- day:int类型,如21
- hour:int类型,小时
- minute:int类型,分钟
- second:int类型,秒
- microsecond:int类型,毫秒
方法
- today、now:返回本地当前日期时间,例如,2023-02-21 21:09:07.915277
- utcnow:返回utc时间,即北京时间的8个小时前
- timestamp
- fromtimestamp:从时间戳获取本地时间
- utcfromtimestamp:从时间戳获取utc时间
- date:返回日期对象
- time:返回时间对象
- replace:返回一个datetime对象,可通过参数修改,会进行检查,不符合抛异常ValueError
- strftime:按照格式返回字符串
- strptime:返回一个对应于 date_string,根据 format 进行解析得到的 datetime 对象。
timedelta
timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0) 用于表示两个时间的间隔
用这个就比较方便,比如,计算昨天,自己写的话还要考虑月份的天数,这个直接减去即可
time
方法
- time:返回时间戳,float类型
- localtime:获得时间元组,secs参数可选,接受float
- mktime:这是 localtime() 的反函数,时间参数t,返回对应的一个float值
- sleep:程序睡眠,secs参数代表睡眠秒数
- strftime:返回指定format格式的字符串,t参数可选,默认为localtime返回的值
- strptime:将string按照指定格式解析,返回一个时间元组
常用
我们常常收到和发送的都是字符串,这里就以字符串处理为例
获取今天凌晨字符串?
def get_today_format(format="%Y-%m-%d 00:00:00"):
str_time = datetime.today().strftime(format)
return str_time
默认返回今天凌晨的字符串,可以修改格式
将一个时间格式的字符串转为时间戳
def get\_time\_stamp(str_time,format="%Y-%m-%dT%H:%M:%SZ") -> float:
s_t = time.strptime(str_time,format)
mkt = time.mktime(s_t) \* 1000
return mkt
def get\_date\_time\_stamp(str_time,format="%Y-%m-%dT%H:%M:%SZ") -> float:
date_time = datetime.strptime(str_time,format)
time_stamp = date_time.timestamp()\*1000
return time_stamp
将一个时间戳转为指定格式的字符串
def get\_str\_by\_timestamp(timestamp=time.time(),format="%Y-%m-%d %H:%M:%S"):
time_tuple = time.localtime(float(timestamp))
str_time = time.strftime(format,time_tuple)
return str_time
将一个utc字符串转为本地时间格式字符串(2023-04-01新增)
def utc\_str\_to\_local\_str(utc_str:str,utc_format="%Y-%m-%dT%H:%M:%SZ",local_format="%Y-%m-%d %H:%M:%S") -> str:
utc_time = datetime.strptime(utc_str,utc_format)
utc_time += timedelta(hours=8)
local_str = datetime.strftime(utc_time,local_format)
return local_str
全部代码
from datetime import date,datetime,timedelta
import time
local_format = "%Y-%m-%d %H:%M:%S"
utc_format = "%Y-%m-%dT%H:%M:%SZ"
chinese_format = "%Y年%m月%d日 %H时%M分%S秒"
def date\_test():
year,month,day = date.today().year,date.today().month,date.today().day
print(type(year),year,month,day)
today = date.today()
print(type(today), str(today))
timestamp = date.today().fromtimestamp(datetime.now().timestamp())
print(timestamp)
today_but_28 = date.today().replace(day=28)
print(today_but_28)
today_format = today.strftime("%Y/%m/%d")
print(today_format)
date_time_format = datetime.strptime(today_format,"%Y/%m/%d")
print(date_time_format)
def datetime\_test():
today,now = datetime.today(),datetime.now()
print(type(today),today,now)
year,month,day= now.year,now.month,now.day
hour, minute, second = now.hour,now.minute,now.second
print(type(year),year,month,day)
print(type(hour),hour,minute,second)
utcnow = datetime.utcnow()
print(utcnow)
date,time = now.date(),now.time()
print(type(date),date)
print(type(time),time)
today_but_28 = now.replace(day=28,minute=59)
print(today_but_28)
today_format = now.strftime("%Y/%m/%d %H:%M:%S")
print(today_format)
def time\_delta\_test():
one_day,one_hour = timedelta(days=1),timedelta(hours=1)
yesterday_same_time = datetime.now() - one_day
one_hour_later = datetime.now() + one_hour
print(yesterday_same_time)
print(one_hour_later)
def time\_test():
time_stamp_float = time.time()
print(time_stamp_float)
s = time.localtime(time_stamp_float)
print(s)
time_float = time.mktime(s)
print(time_float)
local_str = time.strftime(local_format)
print(local_str)
default_format_time = time.strptime(local_str,local_format)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.youkuaiyun.com/topics/618317507)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**