👨🎓作者:Java学术趴 🏦仓库:Github、Gitee ✏️博客:CSDN、掘金、InfoQ、云+社区 💌公众号:Java学术趴 🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。 🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。
👋大家好!我是你们的老朋友Java学术趴。任何的语言都离不开函数,都包括内置函数和自定义函数,函数的作用就是对功能进行封装以便于无效调用。 所谓内置函数就是可以直接拿过来使用的函数,Python已经帮我们内部实现了逻辑,我们只需要直接调用即可,Python一共给我们提供了68个内置函数。
# 将一个字符转换为一个数字
char: str = 'A'
print(ord(char))
# 65
print(ord('a'))
# 97
复制代码
# 将一个字符转换为一个数字
print(chr(65))
# 'A'
print(type(chr(65)))
# <class 'str'>
# 在 python 中没有字符类型的数据。一个字符也是字符串类型
print(chr(97))
# 'a'
复制代码
二进制以0b开头,八进制以0o开头,十六进制以0x开头
# 进制之间的转换
# 十进制转为二进制
num: int = 24
print(bin(num))
# 0b11000
# 十进制转为八进制
print(oct(num))
# 0o30
# 十进制转为十六禁止
print(hex(num))
# 0x18
复制代码
# 元组转换为列表
tupleList: tuple = (1, 2, 3)
print(list(tupleList))
# [1, 2, 3]
print(type(list(tupleList)))
# <class 'list'>
复制代码
# 列表转换为元组
charList: list = [1, 2, 3]
print(tuple(charList))
# (1, 2, 3)
print(type(tuple(tupleList)))
# <class 'tuple'>
复制代码
# 字典操作
# 使用 dict() 函数创建一个空字典
dic: dict = dict()
print(dic)
# {}
# 向字典中追加元素
dic['name'] = '李四'
print(dic)
# {'name': '李四'}
# 将普通类型数据、迭代类型的数据转为一个字典
# 其实就是创建一个带有数据的字典
dic: dict = {'name': '李四', 'arr': [1, 2, 3], 'tuple': (1, 2, 3)}
print(dic)
# {'name': '李四', 'arr': [1, 2, 3], 'tuple': (1, 2, 3)}
复制代码
属于序列范畴的类型:str、元组、列表
函数定义:
函数注意点:
# 序列操作函数
# all()函数:判断一个可迭代参数中是否存在0、空(None)、False元素
# 可迭代参数:列表、字符串、元组
# 测试一个没有元素的可迭代参数
print(all([]))
# True
print(all(()))
# True
# 存在空元素的可迭代对象
print(all([1, None]))
# False
# 存在0元素的可迭代对象
print(all([1, 0]))
# False
# 存在False元素的可迭代对象
print(all([1, False]))
# False
复制代码
函数定义:
函数注意点:
# 序列操作函数
# any()函数:判断一个可迭代参数中是否全部为False
# 可迭代参数:列表、集合、元组等等
# 测试一个没有元素的可迭代参数
print(any([]))
# False
# any()函数中传递一个空列表返回False,和all()区别
# 存在空元素的可迭代对象
print(any([None]))
# False
# 存在0元素的可迭代对象
print(any([0]))
# False
# 存在False元素的可迭代对象
print(any([False]))
# Fasle
# 存在空、0、False的时候为False
print(any([False, None, 0]))
# False
# 存在一个真元素的时候就返回True
print(any([0, 1]))
# True
复制代码
函数定义:
sort与sorted的区别:
参数:
重点:不论排序的是什么类型的可迭代对象,最终都会返回一个新的列表
# sorted()函数:对所有可迭代对象进行排序。返回一个新的列表
arr: list = [1, 4, 3, 6, 0, True]
# 对lise集合排序,默认是升序排序。会生成一个新的列表
print(sorted(arr))
# [0, 1, True, 3, 4, 6]
print(sorted(arr, reverse=False))
# [0, 1, True, 3, 4, 6]。默认是升序排序,省略了 reverse=False
# 降序排序
print(sorted(arr, reverse=True))
# [6, 4, 3, 1, True, 0]
# 不论可迭代对象是一个什么类型的数据,最终返回的都是一个新的列表
tupleArr: tuple = (1, 4, 3, 6, 0, True)
# 升序
print(sorted(tupleArr))
# [0, 1, True, 3, 4, 6]
# 降序
print(sorted(tupleArr, reverse=True))
# [6, 4, 3, 1, True, 0]
复制代码
可以传递其他的参数,比如:忽略字符大小写
# 可以忽略大小写排序 注意:这里不是调用的lower()函数,而是lower属性
print(sorted(['a', 'C', 'b', 'D'], key=str.lower))
# ['a', 'b', 'C', 'D']
print(sorted(['a', 'C', 'b', 'D'], key=str.lower, reverse=True))
# ['D', 'C', 'b', 'a']
复制代码
函数定义:
enumerate()函数用将一个可遍历的数据对象(如列表、元组或者字符串)组合成为一个索引序列,同时列出数据和数据下标,一般用在for循环当中。
语法格式:
enumerate(sequence,[start=0])
返回值
返回enumerate(枚举)对象,相当于Java中的枚举类型
# enumerate()函数
# 定义一个列表
listChar: list = ['spring', 'summer', 'fall', 'winter']
assembleListL: enumerate = enumerate(listChar, start=1)
print(assembleListL)
# <enumerate object at 0x0000022535F4C340>
# 使用enumerate()函数给列表中的数据加一个标号
# 直接打印生成的数据,全部输出
for item in enumerate(listChar, start=1):
print(item)
pass
# (1, 'spring')
# (2, 'summer')
# (3, 'fall')
# (4, 'winter')
# 指定两个参数,第一个是下标,第二个是下标对应的元素
for k, item in enumerate(listChar, start=1):
print(k, item)
pass
# 1 spring
# 2 summer
# 3 fall
# 4 winter
# 定义字典
dictionary: dict = {}
dictionary['name'] = '张三'
dictionary['age'] = 20
dictionary['sex'] = True
print(dictionary)
# {'name': '张三', 'age': 20, 'sex': True}
# enumerate()函数给字典类型的数据添加下标进行遍历
for item in enumerate(dictionary, start=1):
print(item)
pass
# (1, 'name')
# (2, 'age')
# (3, 'sex')
# 可以使用下标值获取对应的key值进一步获取key对应的value值
for k, item in enumerate(dictionary, start=1):
print(dictionary[item])
pass
# 张三
# 20
# True
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。