第一阶段:基础语法

## 第二课:变量与数据类型

程序本质上是在处理数据。这节课学习如何用变量存储数据,以及Python中最常用的几种数据类型。

一、理论知识

### 1.1 什么是变量?

变量就像一个贴了标签的盒子,用来存储数据。给变量赋值就是往盒子里放东西。

name = "小明" # 把字符串"小明"放入名为name的变量 age = 18 # 把整数18放入名为age的变量 height = 1.75 # 把浮点数1.75放入名为height的变量

### 1.2 Python的变量特点

  • 动态类型:不需要提前声明类型,赋值时自动推断
  • 强类型:一旦确定类型,不会自动转换(字符串不能直接和整数相加)
  • 命名规则:只能包含字母、数字、下划线;不能以数字开头;区分大小写

### 1.3 五大基本数据类型

类型 关键字 示例 用途
整数 int 42, -7, 0 计数、索引
浮点数 float 3.14, -0.001 带小数的数值
字符串 str "hello" 文本内容
布尔值 bool True, False 真假判断
空值 NoneType None 表示"没有值"

### 1.4 查看数据类型

print(type(42)) # <class 'int' print(type("hello")) # <class 'str' print(type(3.14)) # <class 'float' print(type(True)) # <class 'bool'

### 1.5 类型转换

``` # 转换为整数 int("42") # 42 int(3.9) # 3(截断小数,不是四舍五入)

# 转换为浮点数 float(42) # 42.0

# 转换为字符串 str(42) # "42"

# 转换为布尔值 bool(0) # False bool(1) # True bool("") # False(空字符串为False) bool("hi") # True ```

⚠️ 常见错误

int("hello") 会报错!因为"hello"无法转换为整数。只有数字字符串才能转。

## 二、实操演示

### 2.1 变量交换

``` # 交换两个变量的值 a = 10 b = 20 print("交换前:", a, b) # 交换前: 10 20

a, b = b, a print("交换后:", a, b) # 交换后: 20 10 ```

### 2.2 字符串拼接与格式化

``` name = "小明" age = 18

# f-string(推荐) print(f"我叫{name},今年{age}岁") # 输出: 我叫小明,今年18岁

# 也可以用 + 拼接(需要类型转换) print("我叫" + name + ",今年" + str(age) + "岁") ```

### 2.3 字符串的基本操作

text = "Hello, Python!" print(len(text)) # 14(字符串长度) print(text.upper()) # HELLO, PYTHON! print(text.lower()) # hello, python! print(text.split(",")) # ['Hello', ' Python!'] print(text[0]) # H(索引从0开始) print(text[7:13]) # Pytho(切片)

## 三、动手练习

练习 2.1:温度转换器 简单

摄氏温度转华氏温度的公式:华氏 = 摄氏 × 9/5 + 32

编写一个脚本 temp_converter.py

  1. 定义一个变量 celsius,赋值为 36.5
  2. 计算对应的华氏温度
  3. 用 f-string 输出:"36.5摄氏度 = XX.X华氏度"

练习 2.2:购物清单 简单

模拟一个简单的购物计算:

  1. 定义商品单价:price = 25.5
  2. 定义购买数量:quantity = 3
  3. 计算总价 total = price * quantity
  4. 输出:"购买3件商品,单价25.5元,总计XX.X元"

练习 2.3:信息卡片 中等

创建变量存储个人信息,然后输出一张格式化的信息卡:

``` name = "张三" age = 20 city = "北京" gpa = 3.85

# 输出格式如下: # ╔══════════════════╗ # ║ 个 人 信 息 ║ # ╠══════════════════╣ # ║ 姓名:张三 ║ # ║ 年龄:20岁 ║ # ║ 城市:北京 ║ # ║ 绩点:3.85 ║ # ╚══════════════════╝ ```

练习 2.4:字符串侦探 中等

给定字符串 s = "Python is awesome",在交互模式中尝试:

  1. 获取字符串长度
  2. 提取第一个单词 "Python"
  3. 提取最后一个单词 "awesome"
  4. 将所有字母转为大写
  5. 将空格替换为连字符 -

提示:查阅 术语表 中的字符串方法。

## 四、本课要点

  • 变量是存储数据的容器,赋值即用 =
  • 五种基本类型:int、float、str、bool、None
  • type() 查看数据类型
  • int()float()str()bool() 进行类型转换
  • f-string 是格式化字符串的最佳方式:f"值={variable}"
  • 字符串索引从0开始,支持切片 s[start:end]

📚 推荐阅读

Python官方教程 - 速览 — 官方文档中的快速入门章节。

💡 学习建议

在交互模式中多尝试类型转换,看看哪些能成功、哪些会报错。理解"什么能转、什么不能转"比死记硬背更重要。

Hello Python — 你的第一个Python程序 Dify 是什么 →