Python内置函数:print()
Python 是一门精简、优雅、易学、高效的编程语言,其内置的函数库十分强大,其中内置函数 print() 更是我们经常用到的基础库之一。print() 函数是用来输出结果到标准输出设备(一般指显示器)的,它可以接受 0 个或多个参数,并以空格作为默认分隔符将它们打印到屏幕上,还可以通过设置 sep 和 end 参数实现更多自定义的输出格式。
下面,我将会详细介绍 print() 函数的常用用法,从基础用法和高级用法两个方面进行说明。
## 基础用法
### 1. 输出字符串
如果只使用 print() 函数,它会自动换行,并且在最后输出一个空行。通常情况下,我们可以向 print() 函数传递一个或多个字符串作为参数,这些字符串将会被打印在屏幕上。例如:
print('Hello, World!') # 输出: Hello, World!
print('This is a sentence.') # 输出: This is a sentence.
print() 函数也可以同时输出多个参数,它们直接以空格作为默认分隔符分开,例如:
print('Hello,', 'World!') # 输出: Hello, World!
print('This', 'is', 'a', 'sentence.') # 输出: This is a sentence.
你还可以使用 + 符号将多个字符串拼接成一个字符串后输出,例如:
print('Hello,' + ' World!') # 输出: Hello, World!
print('This' + ' is' + ' a' + ' sentence.') # 输出: This is a sentence.
### 2. 输出变量
除了输出字符串,print() 函数也可以输出变量的值。例如:
x = 10 print(x) # 输出: 10
在输出变量时,还可以使用 f-string 格式来进行格式化输出。例如:
x = 10
print(f'The value of x is {x}.') # 输出: The value of x is 10.
在上面的代码中,花括号 {} 中的变量 {x} 被替换成了变量 x 的值。
如果想输出多个变量的值,可以使用多个花括号 {},每个花括号中放置一个变量或表达式。例如:
x = 10
y = 20
print(f'The value of x is {x}, and the value of y is {y}.') # 输出: The value of x is 10, and the value of y is 20.
### 3. 自定义分隔符
默认情况下,print() 函数会以空格作为分隔符将输入的多个参数打印在同一行上。如果要自定义分隔符,可以使用 sep 参数。例如:
print('Tom', 'Jerry', sep=',') # 输出: Tom,Jerry
在上面的代码中,我们将 sep 参数设置为 ,,从而使得输出的字符串使用 , 作为分隔符。
### 4. 不换行输出
默认情况下,print() 函数会在输出后自动打印一个换行符,但是有时我们需要在输出时不换行。此时,我们可以使用 end 参数来实现不换行输出。例如:
print('Hello, ', end='')
print('World!') # 输出: Hello, World!
在上面的代码中,我们将 end 参数设置为一个空字符串 '',从而实现了两次 print() 函数的输出在同一行上。
## 高级用法
### 1. 格式化输出
print() 函数不仅可以输出简单的字符串和变量,还可以输出格式化的字符串和变量,通过这种方式可以灵活地控制输出的格式,使其更加美观和易读。Python 提供了多种格式化输出的方法,其中比较常用的是百分号(%)格式化和 f-string 格式化方法。
- 百分号(%)格式化
使用百分号(%)进行格式化输出的方法与 C 语言非常相似,其基本语法为:
print('格式化字符串' % (变量1, 变量2, ...))
其中,% 表示格式化操作符,格式化字符串中使用 %d 表示整数,%f 表示浮点数,%s 表示字符串,%c 表示字符,%x 表示十六进制整数,%o 表示八进制整数等等,具体使用方式见下面的示例:
name = 'Tom'
age = 18
height = 1.76
print('我的名字叫 %s,我的年龄是 %d,我的身高是 %.2f 米。' % (name, age, height))
# 输出: 我的名字叫 Tom,我的年龄是 18,我的身高是 1.76 米。
在上面的代码中,我们定义了三个变量 name、age 和 height,然后使用 % 进行格式化输出。注意,%.2f 表示保留两位小数的浮点数。
- f-string 格式化
f-string 是 Python 3.6 版本中增加的一种格式化字符串的方法,它使用花括号 {} 来包含需要格式化的变量或表达式,语法非常简单、直观、易用,示例如下:
name = 'Tom'
age = 18
height = 1.76
print(f'我的名字叫 {name},我的年龄是 {age},我的身高是 {height:.2f} 米。')
# 输出: 我的名字叫 Tom,我的年龄是 18,我的身高是 1.76 米。
在上面的代码中,我们使用 f-string 来进行格式化输出。花括号 {} 内可以直接放置变量名,在变量名后面使用冒号 : 可以添加格式说明符。:.2f 表示保留两位小数的浮点数。
### 2. 输出到文件
除了输出到标准输出设备(一般指显示器),print() 函数还可以将输出结果重定向到文件中,示例如下:
with open('output.txt', 'w') as f:
print('Hello, World!', file=f)
在上面的代码中,我们使用 with open() 语句打开文件 output.txt,然后将 print() 函数的输出重定向到该文件中。执行完毕后,文件 output.txt 中的内容就是 Hello, World!。
### 3. 打印对象
print() 函数可以接受任何类型的对象作为参数并打印出其内容,具体输出内容的格式由对象的 __str__() 方法定义。对于自定义的类,我们可以重写 __str__() 方法来定制输出的格式,示例如下:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f'我叫 {self.name},我今年 {self.age} 岁了。'
person = Person('Tom', 18)
print(person) # 输出: 我叫 Tom,我今年 18 岁了。
在上面的代码中,我们定义了一个 Person 类,它包含 name 和 age 两个属性以及 __str__() 方法。通过调用 print() 函数并传递一个 Person 类型的对象 person,
