1 Python中的内置函数

Python中内置了很多函数,我们可以直接调用,以下是一些常见的函数:

  1. abs():返回一个数的绝对值。
  2. all():判断一个可迭代对象中的所有元素是否都为真。
  3. any():判断一个可迭代对象中是否有任何一个元素为真。
  4. ascii():返回一个字符串,其中包含用ASCII表示法表示的字符。
  5. bin():将整数转换为二进制字符串。
  6. bool():将对象转换为布尔值。
  7. breakpoint():在Python 3.7及以上版本中,用于在交互式调试器中设置断点。
  8. bytearray():创建一个字节数组。
  9. bytes():将对象转换为字节串。
  10. callable():判断对象是否可调用。
  11. chr():将整数转换为对应的Unicode字符。
  12. classmethod():定义类方法。
  13. compile():将源代码编译为字节码对象。
  14. complex():创建一个复数。
  15. delattr():删除对象的属性。
  16. dict():创建一个字典。
  17. dir():返回对象的属性和方法列表。
  18. divmod():返回商和余数的元组。
  19. enumerate():返回一个枚举对象,其中包含可迭代对象的索引和值。
  20. eval():计算字符串中的Python表达式。
  21. exec():执行字符串中的Python代码。
  22. filter():使用过滤函数过滤元素。
  23. float():将对象转换为浮点数。
  24. format():格式化字符串。
  25. frozenset():创建一个不可变的集合。
  26. getattr():获取对象的属性。
  27. globals():返回当前全局符号表。
  28. hasattr():判断对象是否具有指定的属性。
  29. hash():返回对象的哈希值。
  30. help():显示对象的帮助文档。
  31. hex():将整数转换为十六进制字符串。
  32. id():返回对象的唯一标识符。
  33. input():从标准输入读取一行文本。
  34. int():将对象转换为整数。
  35. isinstance():判断对象是否为指定类的实例。
  36. issubclass():判断类是否为指定类的子类。
  37. iter():返回对象的迭代器。
  38. len():返回对象的长度。
  39. list():创建一个列表。
  40. locals():返回当前局部符号表。
  41. map():将函数应用于可迭代对象的元素。
  42. max():返回可迭代对象中的最大值。
  43. memoryview():创建一个内存视图对象。
  44. min():返回可迭代对象中的最小值。
  45. next():返回可迭代对象的下一个值。
  46. object():创建一个对象。
  47. oct():将整数转换为八进制字符串。
  48. open():打开一个文件。
  49. ord():将字符转换为整数。
  50. pow():计算幂。
  51. print():打印对象。
  52. property():定义属性。
  53. range():创建一个范围对象。
  54. repr():返回对象的表示字符串。
  55. reversed():返回可迭代对象的反向迭代器。
  56. round():四舍五入浮点数。
  57. set():创建一个集合。
  58. setattr():设置对象的属性。
  59. slice():创建一个切片对象。
  60. sorted():返回排序后的列表。
  61. staticmethod():定义静态方法。
  62. str():将对象转换为字符串。
  63. sum():返回可迭代对象的和。
  64. super():调用父类的方法。
  65. tuple():创建一个元组。
  66. type():返回对象的类型。
  67. vars():返回对象的属性字典。
  68. zip():将多个可迭代对象打包成一个元组列表。

这些内置函数可以帮助我们完成各种常见的任务,例如类型转换、文件操作、数学运算等。

2 print函数介绍

print()函数是Python中用于打印输出的内置函数。它可以将任何对象作为参数,并将其转换为字符串后输出到标准输出设备(通常是屏幕)上。

print()函数的语法如下:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

其中:

  • objects:要输出的对象,可以是字符串、数字、列表、元组等任何可以转换为字符串的对象。
  • sep:用于分隔多个对象的字符串,默认为一个空格。
  • end:输出的结尾字符串,默认为换行符'\n'
  • file:输出的文件对象,默认为sys.stdout,即标准输出。
  • flush:是否刷新输出缓冲区,默认为False

以下是一些使用print()函数的示例:

# 打印字符串
print("Hello, World!")

# 打印多个字符串,用逗号分隔
print("Hello", "World", sep=',')

# 打印列表
print([1, 2, 3])

# 打印元组
print((1, 2, 3))

# 打印字典
print({"name": "Alice", "age": 20})

# 打印多个对象,用逗号分隔
print("Hello", [1, 2, 3], {"name": "Alice", "age": 20},sep=',')

# 指定分隔符和结尾字符
print("Hello", "World", "!", sep="-", end="**")

输出结果:

Python入门05 print函数-LMLPHP

3 print函数的用途

print()函数的输出可以重定向到不同的目标,这使得它在实际应用中具有广泛的用途。以下是一些常见的使用场景:

  1. 输出调试信息:在编写程序时,我们通常需要输出一些调试信息来帮助我们理解程序的运行过程。使用print()函数可以方便地输出这些调试信息。例如:
def factorial(n):
    print("Calculating factorial of", n)
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)

factorial(5)

这个函数会输出每次递归调用的参数,帮助我们理解程序的运行过程。
Python入门05 print函数-LMLPHP
我们从控制台可以看到,按照递归的顺序依次执行,最终打印了120的结果

  1. 输出日志信息:在编写程序时,我们通常需要记录程序运行过程中的日志信息,以便在出现问题时进行排查。使用print()函数可以方便地输出这些日志信息。例如:
import logging

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
logging.error('This is an error message')
logging.critical('This is a critical message')

这个程序会输出不同级别的日志信息,帮助我们了解程序的运行状态。

Python入门05 print函数-LMLPHP
在这个代码中,level=logging.DEBUG设置了日志的级别为DEBUG

logging模块提供了以下几个日志级别,从低到高:

  • DEBUG:调试信息,用于记录程序的详细运行过程。
  • INFO:普通信息,用于记录程序的运行状态和一些重要事件。
  • WARNING:警告信息,用于记录可能出现问题的情况,但不影响程序的正常运行。
  • ERROR:错误信息,用于记录程序出现错误的情况,但不会导致程序崩溃。
  • CRITICAL:严重错误信息,用于记录程序出现严重错误的情况,可能导致程序崩溃。

level=logging.DEBUG设置了日志的级别为DEBUG,这意味着所有级别的日志都会被记录,包括DEBUGINFOWARNINGERRORCRITICAL

比如我们只希望报错信息打印出来,我们就可以将级别调整到error

  1. 输出到文件:在编写程序时,我们通常需要将程序的输出保存到文件中,以便后续的分析和处理。使用print()函数可以方便地将输出重定向到文件中。例如:
with open('output.txt', 'w') as f:
    for i in range(10):
        print(i, file=f)

这个程序会将数字0到9输出到output.txt文件中。这里output.txt存放的路径和你命令行窗口的打开位置相关,如果需要指定文件存放路径,可以设置存放目录

import os

# 创建目录
os.makedirs('C:/temp', exist_ok=True)

# 打开文件
with open('C:/temp/output.txt', 'w') as f:
    for i in range(10):
        print(i, file=f)

这样我们就在C盘下的temp文件夹下创建了日志文件
Python入门05 print函数-LMLPHP

  1. 输出到网络:在编写程序时,我们通常需要将程序的输出发送到网络上的某个地址,以便与其他程序进行通信。使用print()函数可以方便地将输出发送到网络上的某个地址。例如:
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('example.com', 80))
print("GET / HTTP/1.1\r\nHost: example.com\r\n\r\n", file=s)
response = s.recv(1024)
print(response)

这个程序会连接到example.com的80端口,并向其发送一个HTTP请求,然后接收并输出服务器返回的响应。

总结

我们本篇介绍了python常见内置函数,重点介绍了print函数的用法,脚本语言要会用控制台,向控制台打印信息通常便于我们调试程序。在程序正式上线之后,将错误信息记录到文件中便于我们定位线上故障,快速的排查问题。

11-29 07:12