LEONE
发布于 2025-09-02 / 1 阅读
0
0

Python 变量与 print 函数深度解析

python

本文档旨在清晰展示 Python 中不同类型变量的打印过程,并提供相关的延伸练习,帮助您巩固和深化理解。

一、基础打印过程

我们将逐一打印以下六个已定义的变量,并解析其输出原理。

n = 123
f = 456.789
s1 = 'Hello, world'
s2 = 'Hello, \'Adam\''
s3 = r'Hello, "Bart"'
s4 = r'''Hello,
Bob!'''

1. 打印整数 n 与浮点数 f

  • 代码:

    Python

    print(n)
    print(f)
  • 输出:

    123
    456.789
  • 过程解析:

    print() 函数直接读取数字类型变量(整数 int、浮点数 float)的值,并将其以十进制文本的形式显示出来。


2. 打印普通字符串 s1

  • 代码:

    Python

    print(s1)
  • 输出:

    Hello, world
  • 过程解析:

    print() 函数只显示字符串的内容。用于定义字符串边界的单引号 ' 并不会被打印。


3. 打印带转义字符的字符串 s2

  • 代码:

    Python

    print(s2)
  • 输出:

    Hello, 'Adam'
  • 过程解析:

    在字符串 s2 中,' 是一个转义序列,它在字符串内部就代表一个字面上的单引号字符。因此,print() 会将这个单引号作为内容的一部分正常输出。


4. 打印 Raw 字符串 s3

  • 代码:

    Python

    print(s3)
  • 输出:

    Hello, "Bart"
  • 过程解析:

    前缀 r 代表这是一个 Raw 字符串(原始字符串)。它的特性是字符串内部的反斜杠 \ 不会被当作转义符。在这个例子中,虽然没有反斜杠,但它也清晰地展示了字符串 s3 的内容 Hello, "Bart" 被原样输出。


5. 打印多行 Raw 字符串 s4

  • 代码:

    Python

    print(s4)
  • 输出:

    Hello,
    Bob!
  • 过程解析:

    使用三个引号 '''...''' 定义的字符串可以包含换行。print() 函数会完全尊重这些换行符,从而实现多行输出。

二、延伸探索与实践

掌握了基础打印后,可以通过以下练习来加深理解。

1. 深入字符串:修改与预测

挑战 A:引号的艺术

尝试打印以下确切的字符串,思考如何搭配使用单、双引号:

  1. It's a good day.

  2. She said: "Let's go!"

挑战 B:转义字符的妙用

除了 \'\n (换行) 和 \t (制表符) 也非常常用。

Python

# 使用 \n 在一次 print 调用中换行
print("Roses are red,\nViolets are blue.")
​
# 使用 \t 来对齐文本
print("商品\t价格")
print("苹果\t¥10")
print("香蕉\t¥8")

挑战 C:Raw 字符串的实战

在处理 Windows 系统文件路径时,Raw 字符串能避免反斜杠 \ 被错误转义,非常实用。

Python

# 错误的方式,\U 会被 Python 误解
# print('C:\Users\Test')
​
# 正确的方式
print(r'C:\Users\Test')

2. 融会贯通:组合变量与文本

在实际应用中,我们常常需要将变量和固定的文本组合输出。

方法一:使用 + 拼接字符串

Python

name = "Alice"
print("Welcome, " + name + "!")

注意: 这种方法只能用于连接字符串,连接字符串和数字会报错。

方法二:f-string (格式化字符串)

这是目前最推荐、最强大的方法。在字符串前加上 f,然后用 {} 直接嵌入变量。

Python

name = "Bob"
age = 25
print(f"User '{name}' is {age} years old.")
​
# 也可以直接在 {} 中进行计算
print(f"The value of n * 2 is {n * 2}.")

3. 思考题

观察并思考以下两行代码的输出为何不同,这关系到数据类型的核心差异。

Python

# 1. 数字的加法运算
print(100 + 200)
​
# 2. 字符串的拼接操作
print('100' + '200')


评论