新手必背,Python 全部 个内置函数详解,,


一、输入输出

print():打印输出文本

input():获取用户输入文本

print('你好, 我是@程序员小龙') #控制台输出 你好,我是@程序员小龙  s = input('等待你的输入:') print('你输入的内容是' + s) #再与用户交互中可以使用input来获取到用户的指令。

二、基本数据类型
1、数字

int():整型

# 直接赋值a = 1# 类型转换b = int('2')

float():浮点型

# 直接赋值a = 1.0# 类型转换b = float('2.0')

bool():布尔型

# 直接赋值a = True# 类型转换b = bool(0)

complex():复数类型

# 复数类型结构为 a + bj,其中 a 为实部,b 为虚部data1 = 1 + 2jdata2 = 2 + 3jprint("data1 + data2 :", data1 + data2)# 运行结果# data1 + data2 : (3+5j)

2、字符串

str():字符串类型

# 直接赋值str1 = 'abcd'# 类型转换string = str(123456)

3、列表

list():列表类型,将一个可迭代对象转换为列表

# 直接赋值,用中括号包裹,用逗号分隔元素list1 = [1, 2, 3, 4, 5]# 可以利用range函数赋值list2 = list(range(1, 10))

4、元组

tuple():元组类型,将一个可迭代对象转换为元组

# 直接赋值,使用小括号包裹,用逗号分隔元素(小括号其实也可以省略)tuple1 = ("Python教程", "学习Python")# 使用tuple函数创建tuple2 = tuple("hello")

5、集合

set():集合类型,创建一个集合

# set集合接受可迭代对象作为参数set1 = set([1, 2, 3, 4, 5])set2 = set(('python', 'xiaolong'))

6、字典

dict():字典类型,创建一个字典

# 直接赋值,使用花括号包裹,key和value中间使用冒号,用逗号分隔元素dict1 = {'品类': '苹果', '价格': '10'}# 使用zip函数将两个列表转为字典keys = ['苹果', '梨', '香蕉']values = [10, 20, 30]dict2 = dict(zip(keys, values))

三、数学运算

abs():返回绝对值

a = abs(-11)

divmod():返回商和余数

a = divmod(5, 3)print(a) # (1, 2)

round():四舍五入

a = round(10.2453, 2)print(a) # 10.25

pow(a,b):返回a的b次幂,如果有第三个参数,则求完幂次后对第三个数取余

a = pow(10, 2)print(a)  # 100

sum():求和

list1 = [1, 2, 3, 4, 5]a = sum(list1)print(a) # 15

min():求最小值

list1 = [1, 2, 3, 4, 5]a = min(list1)print(a) # 1

max():求最大值

list1 = [1, 2, 3, 4, 5]a = max(list1)print(a) # 5

四、进制转换

bin():将给定的参数转换为二进制

a = bin(6)print(a) # 0b110 6的二进制是110

oct():将给定的参数转换为八进制

a = oct(8)print(a) # 0o10

hex():将给定的参数转换为十六进制

a = hex(8)print(a) # 0x8

五、序列集合操作

reversed():将一个序列翻转,返回一个反向的迭代器

# reversed接受一个序列参数,返回的是一个逆迭代对象,所以需要在使用序列再转换回去list1 = [1, 2, 3, 4, 5]print(list(reversed(list1)))# 输出[5, 4, 3, 2, 1]

slice():列表的切片

# slice主要做序列切片,可以从其中切取部分重新组成新的序列list1 = [1, 2, 3, 4, 5]s = slice(1, 3)print(list1[s])# 推荐使用简写方式:lst[start:stop]list1 = [1, 2, 3, 4, 5]print(list1[1:3])

bytes():把字符串转化为bytes类型

b = bytes('@程序员小龙', encoding='utf-8')print(b) # b'@\xe7\xa8\x8b\xe5\xba\x8f\xe5\x91\x98\xe5\xb0\x8f\xe9\xbe\x99'

ord():输入字符找到对应编码的位置

print(ord('a'))   # 97print(ord('小'))  # 31243

chr():输入位置数字找出对应的字符

# 输出33~1000数字对应的字符for i in range(33, 1000):    print(chr(i), end=' ')

ascii():将Unicode字符串转换为ASCII字符串

print(ascii('Hello,@程序员小龙\n'))#'Hello,@\u7a0b\u5e8f\u5458\u5c0f\u9f99\n'

repr():返回一个对象的字符串形式

# repr原样输出,会过滤掉转义字符s = 'Hello,\t@程序员\n小龙\n'print(s) # Hello,        @程序员# 小龙print(repr(s)) # 'Hello,\t@程序员\n小龙\n'

len():返回一个对象中元素的个数

# 获取个数list1 = [1, 2, 3, 4, 5]print(len(list1))

sorted():对可迭代对象进行排序操作

# 对迭代对象进行排序,可以选择正序,逆序list1 = [1, 5, 8, 3, 4, 2]print(sorted(list1))print(sorted(list1, reverse=True))# 自定义规则list2 = ['one', 'two', 'three', 'four', 'five', 'six']def func(s):    return len(s)print(sorted(list2, key=func))

enumerate():获取集合的枚举对象

score_dict = {    '张三': 33,    '李四': 36,    '王五': 74,    '赵六': 56,    '李白': 88,    '王维': 98,    '杜甫': 100,    '王昌龄': 89,    '王之涣': 97,    '王羲之': 93}score_dict_sorted = sorted(score_dict.items(), key=lambda x:x[1], reverse=True)for index, (name, score) in enumerate(score_dict_sorted, start=1):    print(f'第{index}名:{name}\t成绩:{score}')# 第1名:杜甫        成绩:100# 第2名:王维        成绩:98# 第3名:王之涣      成绩:97# 第4名:王羲之      成绩:93# 第5名:王昌龄      成绩:89# 第6名:李白        成绩:88# 第7名:王五        成绩:74# 第8名:赵六        成绩:56# 第9名:李四        成绩:36# 第10名:张三       成绩:33

all():可迭代对象中所有元素都为True,返回结果才为True

any():可迭代对象中只要有一个是True,返回结果就是True

zip():在多个迭代器上并行迭代,从每个迭代器返回一个数据项组成元组,如果各个迭代器的元素个数不同,则返回列表长度与最短的对象相同

# zip可以将多个迭代器转换成元组list1 = [1, 2, 3]list2 = ['苹果', '香蕉', '梨']list3 = [10, 20, 15]for data in zip(list1, list2, list3):    print(data)# (1, '苹果', 10)# (2, '香蕉', 20)# (3, '梨', 15)

filter():过滤器可以接收一个自定义筛选函数,将迭代器中的元素传到函数中进行判断,用来确定是否保留这个元素。

# 过滤出数据中的偶数def func(i):    return i % 2 == 0list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]lst = filter(func, list1)print(list(lst))# [2, 4, 6, 8]

map():可以对可迭代对象中的元素进行映射,分别去执行自定义函数

# 给数据中每个元素加1def func(i):    return i + 1list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]lst = map(func, list1)print(list(lst))# [2, 3, 4, 5, 6, 7, 8, 9, 10]

六、文件操作

open():用于打开一个文件,创建文件句柄

f = open("name.txt", 'r', encoding='utf-8')f.read()f.close()

七、和迭代器相关

range():生成可迭代数据

next():迭代器向下执行一次

iter():获取迭代器

# 使用range生成数据给列表# iter获取序列的一个迭代器,然后可以使用next进行逐个输出list1 = list(range(1, 6)) # [1, 2, 3, 4, 5]it = iter(list1)print(next(it)) # 1

八、作用域相关(用于查错)

locals():返回当前作用域中的变量名字

globals():返回全局作用域中的变量名字

# 当前作用域和全局作用域的用法def func():    a = 100    b = 'abc'    print(locals())    print('-------')    print(globals())func()# {'a': 100, 'b': 'abc'}#-------# {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x10e13ef70>, '__spec__': None, '__annotations__': {}, '__builtins__': , '__file__': '/Users/troy/Documents/2_team-workspace/python-dev/0_utils/1.py', '__cached__': None, 'func':}

九、其他

help():函数用于查看其他函数或者模块的说明

# 获取list函数的帮助文档print(help(list))

callable():用于检查一个对象是否可以调用

s = '@程序员小龙'print(callable(s))  # Falsedef hello():    passprint(callable(hello))  # True

hash():获取到hash值,用于做key

# 基本使用方法,hash是唯一的,可以用来做数据的key值s = '@程序员小龙'print(hash(s))

dir():查看对象的内置属性

# 查询str的内置方法print(dir(str))

__import__():用于动态加载类和函数

# 动态加载os模块name = input("请输入你要导入的模块:")  # 输入osos = __import__(name)print(os.getcwd())

本站内容未经许可,禁止任何网站及个人进行转载。

评论关闭