Python函数入门(三)

本文深入探讨Python中关键的内置模块与函数,包括os、sys、time、datetime、calendar等,以及递归、lambda表达式和偏函数的高级用法。通过实例解析,帮助读者掌握Python编程的重要技巧。
摘要由CSDN通过智能技术生成
内容回顾:
	|-- 函数结尾工作
		|-- 深入讲解了递归在算法中的使用
			|-- 斐波那契数列实现和使用
		|-- lambda表达式
			lambda [参数列表]:函数体
		|-- 偏函数 
			函数的重新定义
			from functools import partial
		|-- 全局函数
	|-- 系统内置的常见模块
		|-- random
			random.random()
			random.randint()
			random.randrange()
			random.uniform()
			random.choice()
		|-- builtins
			这个默认加载内置模块、全局函数、常见异常类
		|-- functools
			这个模块主要提供跟函数相关的操作
			partial()、reduce()
		|-- math
			pi、ceil、floor、pow()、sqrt()、modf()
		|-- copy
			讲深浅拷贝时再说
		|-- os
			主要操作的就是系统的文件管理系统
今日目标:
	|-- 内置模块
		|-- os.path
		|-- sys
		|-- time
		|-- datetime
		|-- calendar
		|-- hashlib
		|-- hmac
		|-- uuid
	|-- IO流操作
		open全局函数

os.path模块

推荐使用 from os import path 导入方式
	|-- os.path.abspath(path)		# 获取path的绝对路径
	|-- os.path.altsep			# 路径的分割符
	|-- os.path.basename(path)		# 获取路径对应的文件名称
	|-- os.path.dirname(path)		# 获取文件所在目录
	|-- os.path.exists(path)		# 判断文件是否存在
	|-- os.path.getatime(path)		# 获取文件最后的访问时间
	|-- os.path.getctime(path)		# 获取文件的创建时间
	|-- os.path.getmtime(path)		# 获取文件的修改时间 
	|-- os.path.getsize(path)		# 获取文件大小,单位是B(字节)
	|-- os.path.isdir(path)			# 判断path是不是目录
	|-- os.path.isfile(path)		# 判断路径是不是一个文件
	|-- os.path.isabs(path)			# 判断路径是不是一个绝对路径
	|-- os.path.islink(path)		# 判断路径是不是一个链接(软连接、硬链接)
	|-- os.path.ismount(path)		# 判断路径是不是一个挂载文件(U盘、光驱等)
	|-- os.path.join(path1, path2)		# 完成路径的拼接,会自动根据系统生成分隔符
	|-- os.path.split(path)			# 分隔文件路径

sys模块

	 |-- sys.argv				# 获取脚本名称和参数
	 |-- sys.exit()				# 退出系统
	 |-- sys.getdefaultencoding()		# 或者默认编码
	 |-- sys.getfilesystemencoding()	# 或者默认文件系统编码
	 |-- sys.getrecursionlimit()		# 获取递归的限制层数
	 |-- sys.setrecursionlimit()		# 设置递归的限制层数
	 |-- getrefcount()			# 对象的引用计数次数

time模块

	|-- time.asctime()		# 返回当前时间,格式是西欧格式
	|-- time.ctime()		# 返回当前时间,格式是西欧格式	
	|-- time.gmtime()		# 返回当前时间,时间对象,注意:时区是伦敦时区
	|-- time.localtime()		# 返回当前时间,时间对象,注意:时区是当前时区
	|-- time.sleep(seconds)		# 让当前线程停止运行
	|-- time.time()			# 获取当前时间戳
	|-- time.struct_time(元组)	# 构造一个对应的时间对象
	|-- time.strftime()		# 将一个时间对象格式化为特定的字符串输出
	|-- time.strptime()		# 将特别的字符串时间转换为时间对象

datetime模块

	import datetime
	|-- datetime.datetime.now()		# 获取当前时间对象
	|-- datetime.date(year, month, day)	# 构造一个日期对象
	|-- datetie.time(hour, min, seconds)	# 获取时间对象
	|-- str(datetime对象)			# 格式化datetime对象为字符串

calendar模块

	日历模块

hashlib模块

	加密算法相关的模块
	加密算法:
		|-- 通过是否可逆
			|-- 可逆加密
				|-- 加密和解密是否使用同一个秘钥
					|-- 对称加密	DES
						使用同一秘钥加密和解密
					|-- 非对称加密	RSA 
						使用一对公私钥对
			|-- 不可逆加密(散列加密、hash加密、哈希加密)
				md3、md4、md5
				sha1、sha256、sha384 ...
				
				二进制的128位数组  ==> 32位字符串
				
				使用场景:密码加密、文件校验
				
				hash,引入盐值 salt

uuid:

	import uuid
	s = uuid.uuid4()
	s.hex
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值