学python必须掌握的30个常用内置函数

2023/05 28 21:05
阅读(317)

Python内置了许多函数,这些函数能够通过提供预定义的功能来帮助我们完成更多的任务,并且在很多情况下能够取代手写的代码。比如,python内置函数可以用来对列表、字典和字符串等数据类型进行操作,来进行数学计算、进行文件操作、处理时间等许多任务。

同时,Python的内置函数是开发高效Python代码的基础。由于内置函数在Python解释器中实现,因此它们通常比相应的手写代码运行得更快,并且使用内置函数可以大大提高代码的可读性和可维护性。

1、print函数

print() 函数用于打印输出,在Python中非常常用。它的基本语法是:

 
     print(object(s), sep=separator, end=end, file=file, flush=flush)     

其中:

  • object(s)是要输出的对象
  • sep是分隔符,默认为一个空格
  • end是输出的结束符,默认为 “\n” (换行符)
  • file是输出流,可以是一个文件对象或者 sys.stdout (标准输出流)
  • flush是一个布尔值,表示是否刷新流,用于强制将输出缓冲区中的内容写入到文件或终端中。

例子:

print("Hello, World!") # 输出:Hello, World!

2、len() 函数

len() 函数用于获取对象的长度或元素个数,其基本语法是:

len(s)

其中 s 是要计算长度的对象,比如字符串、列表、元组、集合等都可以使用这个函数。而字典使用该函数时只会返回字典中键值对的数量。

例子:

a = "Hello, World!"
print(len(a))  # 输出:13

b = [1, 2, 3, 4, 5]
print(len(b))  # 输出:5

3、type() 函数

type() 函数用于获取对象的类型,并返回一个类型对象。其基本语法是:

type(object)

其中 object 是要获取类型的对象,可以是任意类型的对象。

例子:

a = 5
print(type(a))  # 输出:<class 'int'>

b = [1, 2, 3, 4, 5]
print(type(b))  # 输出:<class 'list'>

4、sum() 函数

sum() 函数用于计算可迭代对象中所有元素的和。其基本语法是:

sum(iterable, start=0)

其中 iterable 是可迭代对象,如列表、元组、集合等都可以使用此函数。start 则表示加法的起始值。

例子:

a = [1, 2, 3, 4, 5]
b = (6, 7, 8, 9, 10)
c = {11, 12, 13, 14, 15}

print(sum(a))  # 输出:15
print(sum(b, 5))  # 输出:45
print(sum(c, 10))  # 输出:65

5、range() 函数

range() 函数用于生成一个整数序列,其基本语法是:

range(start, stop[, step])

其中 start 表示序列的起始值(默认为 0),stop 表示序列的结束值(不包括结束值),step 表示每两个值之间的差(默认为 1)。

例子:

a = range(5)
print(list(a))  # 输出:[0, 1, 2, 3, 4]

b = range(3, 10, 2)
print(list(b))  # 输出:[3, 5, 7]

6、min() 和 max() 函数

min() 和 max() 函数分别用于获取可迭代对象中最小值和最大值。其基本语法如下:

min(iterable, *[, key, default])
max(iterable, *[, key, default])

其中,iterable 是要查找的可迭代对象,至少需要传入一个参数。key 是一个用于给每个元素设定评分的函数,按照其评分结果进行查找最小值或最大值。default 为可选参数,表示如果可迭代对象为空,或者无法比较大小,返回的默认值。

例子:

lst = [4, 7, 2, 8, 5, 1]
min_num = min(lst)
max_num = max(lst)
print(min_num)  # 输出:1
print(max_num)  # 输出:8

7、sorted() 函数

sorted() 函数用于对可迭代对象进行排序,其基本语法如下:

sorted(iterable, *, key=None, reverse=False)

其中,iterable 是要排序的可迭代对象。key 是一个函数,它为每个元素生成一个键,按照这个键进行排序。reverse 为可选参数,控制是否倒序排列。

例子:

lst = [4, 7, 2, 8, 5, 1]
sorted_lst = sorted(lst)
print(sorted_lst)  # 输出:[1, 2, 4, 5, 7, 8]

8、zip() 函数

zip() 函数用于将多个可迭代对象按照相同的索引位置进行打包,生成一个元组或列表序列。其基本语法如下:

zip(*iterables)

其中,iterables 是多个可迭代对象,用于打包。返回结果是一个迭代器,每个元素是一个元组。

例子:

lst1 = [1, 2, 3]
lst2 = ['a', 'b', 'c']
zipped = zip(lst1, lst2)
print(list(zipped))  # 输出:[(1, 'a'), (2, 'b'), (3, 'c')]

9、any() 和 all() 函数

any() 和 all() 函数分别用于判断可迭代对象中是否有一个或全部是 True。它们的基本语法如下:

any(iterable)
all(iterable)

其中,iterable 是要判断的可迭代对象,分别返回一个布尔值。

例子:

lst1 = [1, 2, 3]
lst2 = [0, 1, 1]
lst3 = []

print(any(lst1))  # 输出:True
print(any(lst2))  # 输出:True
print(any(lst3))  # 输出:False
print(all(lst1))  # 输出:True
print(all(lst2))  # 输出:False
print(all(lst3))  # 输出:True

10、enumerate() 函数

enumerate() 函数用于将一个可迭代对象生成一个枚举对象,同时获得每个元素的索引和对应的值。其基本语法如下:

enumerate(iterable, start=0)

其中,iterable 是要枚举的可迭代对象。start 为可选参数,表示索引从哪个数字开始,默认为 0。

例子:

lst = [1, 2, 3]
for index, value in enumerate(lst):
    print(index, value)

# 输出: 
# 0 1
# 1 2
# 2 3

11、abs() 函数

abs() 函数用于获取一个数字的绝对值,其基本语法如下:

abs(x)

其中,x 是要获取绝对值的数字。

例子:

num1 = -6
num2 = 8
print(abs(num1))  # 输出:6
print(abs(num2))  # 输出:8

12、round() 函数

round() 函数用于将一个数字进行四舍五入,可以设置保留的小数位数。其基本语法如下:

round(number[, ndigits])

其中,number 是要四舍五入的数字,ndigits 为可选参数,表示要保留的小数位数,默认为 0。

例子:

num1 = 2.5467
num2 = 3.14159
print(round(num1))  # 输出:3
print(round(num2, 2))  # 输出:3.14

13、pow() 函数

pow() 函数用于计算一个数字的幂,其基本语法如下:

pow(x, y[, z])

其中,x 是底数,y 是指数,z 为可选参数,表示计算幂时对该数取模。

例子:

a = 5
b = 3
print(pow(a, b))  # 输出:125
print(pow(a, b, 2))  # 输出:1,因为 5^3 % 2 = 1

14、chr() 和 ord() 函数

chr() 函数用于将 Unicode 码转换为对应的字符,其基本语法如下:

chr(i)

其中,i 是一个整数,表示 Unicode 码。

对应地,ord() 函数用于将字符转换为对应的 Unicode 码,其基本语法如下:

ord(c)

其中,c 表示要转换的字符。

例子:

print(chr(65))  # 输出:'A'
print(chr(97))  # 输出:'a'
print(ord('A'))  # 输出:65
print(ord('a'))  # 输出:97

15、eval() 函数

eval() 函数可以将一个字符串作为 Python 代码进行运行,其基本语法如下:

eval(expression, globals=None, locals=None)

其中,expression 表示要执行的 Python 代码字符串。globals 和 locals 为可选参数,分别表示全局变量字典和局部变量字典。

例子:

a = 5
b = 3
print(eval('a+b'))  # 输出:8

16、format() 函数

format() 函数用于将值插入到字符串中,其中花括号 “{}” 表示插入位置,可以通过参数指定插入的值和格式。具体语法如下:

format(value[, format_spec])

其中 value 是要插入到字符串中的值,format_spec 是可选的格式化字符串。

例子:

pi = 3.141592653589793
print("π ≈ {:.2f}".format(pi))  # 输出:π ≈ 3.14

17、input() 函数

input() 函数用于从用户处获取输入的数据,其基本语法如下:

input([prompt])

其中 prompt 是可选的字符串,表示要提示用户输入的内容。如果用户输入的是字符串,input() 函数会直接将其返回,如果是其他类型的数据,需要使用相应的函数进行转换。

例子:

name = input("What's your name? ")
age = int(input("How old are you? "))
print("Hello, {}! You are {} years old.".format(name, age))

18、open() 函数

open() 函数用于打开文件,返回一个文件对象。其基本语法如下:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

其中 file 表示要打开的文件的路径和名称,mode 表示文件的打开模式。

例子:

with open('test.txt', 'w') as f:
    f.write('Hello, World!\n')

with open('test.txt', 'r') as f:
    print(f.read())  # 输出:Hello, World!

19、isinstance() 函数

isinstance() 函数用于判断一个对象是否是指定类或类型的实例。其基本语法如下:

isinstance(object, classinfo)

其中 object 是要判断的对象,classinfo 是要判断的类或类型对象。

例子:

num1 = 5
num2 = '5'
lst = [1, 2, 3]

print(isinstance(num1, int))  # 输出:True
print(isinstance(num2, str))  # 输出:True
print(isinstance(lst, list))  # 输出:True

20、id() 函数

id() 函数用于获取对象的唯一标识符(内存地址)。其基本语法如下:

id(object)

其中 object 是要获取标识符的对象。

例子:

a = [1, 2, 3]
b = a
print(id(a))  # 输出 a 的标识符
print(id(b))  # 输出 b 的标识符,与 a 相同

21、hash() 函数

hash() 函数用于获取一个对象的哈希值。哈希值是一个整数,每个对象有唯一的哈希值,可以用于比较对象的唯一性。其基本语法如下:

hash(object)

其中 object 是要获取哈希值的对象。

例子:

a = 'Hello, World!'
b = 'Hello, World!'
lst = [1, 2, 3]

print(hash(a))  # 输出:-1344287163
print(hash(b))  # 输出:-1344287163
print(hash(lst))  # 报错:TypeError: unhashable type: 'list'

22、callable() 函数

callable() 函数用于判断一个对象是否可以被调用(即是否是一个函数)。其基本语法如下:

callable(object)

其中 object 是要判断的对象。

例子:

def func():
    pass

a = 5
b = 'hello'

print(callable(func))  # 输出:True
print(callable(a))  # 输出:False
print(callable(b))  # 输出:False

23、str() 函数

str() 函数用于将其他类型的数据转化为字符串,其基本语法如下:

str(object)

其中 object 是要转换为字符串的对象。

例子:

num1 = 5
num2 = 3.14
lst = [1, 2, 3]

print(str(num1))  # 输出:'5'
print(str(num2))  # 输出:'3.14

24、upper() 和 lower() 函数

upper() 和 lower() 函数分别用于将字符串转换为全大写和全小写,其基本语法如下:

s.upper()
s.lower()

其中 s 是要转换的字符串。

例子:

s = 'Hello, World!'

print(s.upper())  # 输出:'HELLO, WORLD!'
print(s.lower())  # 输出:'hello, world!'

25、startswith() 和 endswith() 函数

startswith() 和 endswith() 函数分别用于判断一个字符串是否以指定的前缀或后缀开头或结尾。其基本语法如下:

s.startswith(prefix[, start[, end]])
s.endswith(suffix[, start[, end]])

其中 s 是要判断的字符串,prefix 或 suffix 是要检查的前缀或后缀,start 和 end 是可选参数,表示要检查的区间。

例子:

s = 'Hello, World!'

print(s.startswith('Hello'))  # 输出:True
print(s.endswith('!'))  # 输出:True

26、replace() 函数

replace() 函数用于将一个字符串中的指定子串替换为另一个字符串,其基本语法如下:

s.replace(old, new[, count])

其中 s 是要进行替换的字符串,old 是要被替换的子串,new 是新的字符串,count 是可选参数,表示要替换的最大次数。

例子:

s = 'Hello, World!'
new_s = s.replace('World', 'Python')

print(new_s)  # 输出:'Hello, Python!'

27、strip()、lstrip() 和 rstrip() 函数

strip() 函数用于去掉一个字符串两端指定的字符(默认为空格),lstrip() 和 rstrip() 分别用于去掉左端和右端的指定字符。其基本语法如下:

s.strip([chars])
s.lstrip([chars])
s.rstrip([chars])

其中 s 是要进行处理的字符串,chars 是可选参数,表示要去掉的字符。

例子:

s = '   hello, world!   '

print(s.strip())  # 输出:'hello, world!'
print(s.lstrip())  # 输出:'hello, world!   '
print(s.rstrip())  # 输出:'   hello, world!'

28、split() 和 join() 函数

split() 函数用于将一个字符串按照指定的分隔符分割为多个子字符串,生成一个列表。join() 函数则相反,将一个列表中的字符串按照指定的分隔符连接为一个字符串。其基本语法如下:

s.split(sep=None, maxsplit=-1)
sep.join(seq)

其中 s 是要处理的字符串,sep 是用于分隔或连接字符串的字符,maxsplit 是可选参数,表示分割的最大次数。seq 是要连接的字符串序列。

例子:

s = 'apple,banana,orange'
lst = s.split(',')
print(lst)  # 输出:['apple', 'banana', 'orange']

new_s = '-'.join(lst)
print(new_s)  # 输出

29、capitalize() 函数和 title() 函数

capitalize() 函数用于将一个字符串的第一个字符转换为大写,title() 函数用于将一个字符串中的每个词的首字母都转换为大写。其基本语法如下:

s.capitalize()
s.title()

其中 s 是要进行处理的字符串。

例子:

s = 'this is a test string.'

print(s.capitalize())  # 输出:'This is a test string.'
print(s.title())  # 输出:'This Is A Test String.'

以上大约列举了30多个python内置函数,掌握这些内置函数可以帮助我们更好地进行编程,并且能够提高我们编程的效率,也是Python开发的基础要素之一。在学习Python的过程中,你会发现内置函数在Python编程中扮演着重要的角色,因此熟练地使用这些函数可以帮助你更快地开发出高效的Python程序。

o郭二爷o原创或整理--转载请注明: http://www.dszhp.com/built-in-functions.html

发表回复

欢迎回来 (打开)

(必填)