26期_01_Pyhton基本语法

黑马程序员学习笔记

Python基础语法完全指南:从零入门到实战应用

一、初识Python:从字面量开始

1.1 什么是字面量?

在Python编程中,字面量指的是在代码中直接写下来的固定值。它们是程序中最基础的数据表示形式。

python

复制代码
# 字面量示例
print(10)          # 整数字面量
print(13.14)       # 浮点数字面量
print("黑马程序员") # 字符串字面量

1.2 常用的字面量类型

Python中常用的6种值类型包括:

  • 字符串(string)

  • 整数(int)

  • 浮点数(float)

  • 布尔值(bool)

  • 列表(list)

  • 元组(tuple)

1.3 字符串字面量

字符串是由任意数量的字符组成的文本,可以是中文、英文、符号、数字等。

python

复制代码
# 字符串的不同形式
"黑马程序员"          # 双引号字符串
'学Python来黑马'      # 单引号字符串
"003032"            # 数字组成的字符串
"!@#$%^&"          # 符号组成的字符串

二、代码的注释:让程序更易读

2.1 注释的作用

注释是程序中的解释说明文字,不会被执行,但能大大增强代码的可读性。

2.2 注释的分类

python

复制代码
# 单行注释:以#开头,右边所有内容都是注释
# 这是一个单行注释

# 多行注释:使用三引号包围
"""
这是一个多行注释
可以跨越多行
通常用于文件、类或方法的说明
"""

'''
这也是多行注释
使用单引号或双引号都可以
'''

2.3 注释实战技巧

python

复制代码
# 正确的注释方式
name = "张三"  # 定义姓名变量

"""
程序功能:计算用户年龄
创建时间:2024-01-01
作者:黑马程序员
"""

# 注释不会影响代码执行
# print("这行代码不会执行")  # 这行被注释了,不会运行
print("这行代码会执行")

三、变量:程序的记忆单元

3.1 变量的概念

变量是在程序运行时存储数据的抽象概念,用于记录和重复使用数据。

python

复制代码
# 变量的定义格式
变量名 = 变量的值

# 实际示例
name = "张三"      # 字符串变量
age = 25          # 整数变量
height = 175.5    # 浮点数变量

3.2 变量的特征

  • 变量存储的数据可以改变

  • 变量名是数据的标识符

  • 变量值是被存储的具体数据

3.3 变量实战:钱包余额计算

python

复制代码
# 定义初始余额
money = 50

# 购买商品
money = money - 10  # 购买冰淇淋
money = money - 5   # 购买可乐

# 输出结果
print("钱包余额:", money, "元")

四、数据类型:数据的身份证

4.1 查看数据类型

使用type()函数可以查看任何数据或变量的类型。

python

复制代码
# 查看字面量的类型
print(type(10))          # <class 'int'>
print(type(13.14))       # <class 'float'>
print(type("Hello"))     # <class 'str'>

# 查看变量的类型
name = "张三"
print(type(name))        # <class 'str'>

4.2 重要概念:变量无类型,数据有类型

python

复制代码
# 盒子比喻:变量是盒子,数据是内容
box = "足球"    # 盒子装的是足球,不是盒子是足球
print(type(box))  # 查看的是盒子里的内容类型

# 变量可以装不同类型的数据
data = 100      # 整数
data = "100"    # 字符串(变量可以重新赋值)

4.3 字符串的三种定义方式

python

复制代码
# 1. 双引号定义法
str1 = "双引号字符串"

# 2. 单引号定义法
str2 = '单引号字符串'

# 3. 三引号定义法(支持换行)
str3 = """这是一个
可以换行的
字符串"""

# 引号嵌套技巧
str4 = "他说:'你好'"      # 双引号内包含单引号
str5 = '她说:"你好"'      # 单引号内包含双引号
str6 = "他说:\"你好\""   # 使用转义字符

五、数据类型转换:数据的变形记

5.1 为什么需要类型转换?

  • 从文件读取的数字是字符串,需要转为数字

  • input()获取的输入默认是字符串

  • 数字需要转换为字符串才能输出到某些系统

5.2 常见的转换函数

python

复制代码
# 转换为字符串
num = 100
str_num = str(num)      # "100"

# 转换为整数
str_age = "25"
age = int(str_age)      # 25

# 转换为浮点数
str_price = "19.99"
price = float(str_price)  # 19.99

5.3 类型转换注意事项

python

复制代码
# 正确示例
int("100")      # 可以转换
float("3.14")   # 可以转换
str(100)        # 可以转换

# 错误示例
# int("100元")   # 报错:字符串包含非数字字符
# float("abc")   # 报错:不是有效的数字字符串

# 浮点数转整数(丢失精度)
float_num = 19.99
int_num = int(float_num)  # 19(小数部分丢失)

5.4 类型转换练习

python

复制代码
# 定义变量
age = 25            # 整数
height = 175.5      # 浮点数
name = "张三"       # 字符串

# 1. 查看类型
print(type(age))      # <class 'int'>
print(type(height))   # <class 'float'>
print(type(name))     # <class 'str'>

# 2. 转换为字符串
str_age = str(age)        # "25"
str_height = str(height)  # "175.5"

# 3. 尝试将姓名转换为数字(会报错)
# int_name = int(name)  # ValueError

六、标识符:编程的命名艺术

6.1 什么是标识符?

标识符是用户编程时使用的名字,用于给变量、函数、类等命名。

6.2 标识符命名规则

  1. 内容限定:只允许英文、中文、数字、下划线

  2. 大小写敏感Namename是不同的标识符

  3. 不可使用关键字:不能使用Python的保留字

python

复制代码
# 合法的标识符
name = "张三"
user_name = "李四"
_name = "王五"
名字 = "赵六"      # 不推荐使用中文

# 非法的标识符
# 1name = "错误"    # 数字不能开头
# user-name = "错误" # 不能使用连字符
# class = "错误"    # 不能使用关键字

6.3 变量命名规范

  1. 见名知意:变量名应明确表达其含义

  2. 下划线命名法:多个单词用下划线连接

  3. 英文字母全小写:变量名中的英文应全部小写

python

复制代码
# 好的命名
user_age = 25
student_name = "张三"
total_price = 100.5

# 不好的命名
a = 25          # 不知道a代表什么
stuName = "张三"  # 不符合全小写规范

七、运算符:数据的魔法棒

7.1 算术运算符

python

复制代码
# 基本算术运算
a = 10
b = 3

print(a + b)    # 13,加法
print(a - b)    # 7,减法
print(a * b)    # 30,乘法
print(a / b)    # 3.333...,除法
print(a // b)   # 3,整除
print(a % b)    # 1,取余
print(a ** b)   # 1000,幂运算

7.2 赋值运算符

python

复制代码
# 标准赋值
money = 100

# 复合赋值
money += 100    # money = money + 100,结果200
money -= 50     # money = money - 50,结果150
money *= 2      # money = money * 2,结果300
money /= 3      # money = money / 3,结果100.0

print(money)    # 输出最终结果

八、字符串扩展:文本处理的利器

8.1 字符串拼接

python

复制代码
# 字面量拼接
result = "学IT来黑马" + "月薪过万"
print(result)  # 学IT来黑马月薪过万

# 变量拼接
name = "黑马程序员"
address = "建材城东路9号"
message = "我是:" + name + ",我的地址是:" + address
print(message)

# 注意:字符串不能直接与数字拼接
# error = "价格:" + 100  # 错误!
correct = "价格:" + str(100)  # 正确

8.2 字符串格式化(传统方式)

python

复制代码
# 基本格式化
name = "张三"
age = 25
message = "我叫%s,今年%d岁" % (name, age)
print(message)  # 我叫张三,今年25岁

# 常用占位符
# %s - 字符串(万能占位符)
# %d - 整数
# %f - 浮点数

# 精度控制
price = 19.99
print("价格:%5.2f元" % price)   # 价格:19.99元(宽度5,精度2)
print("价格:%.2f元" % price)    # 价格:19.99元(仅精度2)

8.3 快速字符串格式化(f-string)

python

复制代码
# f-string格式化(Python 3.6+)
name = "张三"
age = 25
money = 52.269

message = f"我叫{name},今年{age}岁,有{money:.2f}元"
print(message)  # 我叫张三,今年25岁,有52.27元

# 表达式格式化
print(f"10 + 20 = {10 + 20}")          # 10 + 20 = 30
print(f"类型是:{type('Hello')}")      # 类型是:<class 'str'>

8.4 实战:股票价格计算

python

复制代码
# 股票计算小程序
name = "传智教育"
stock_price = 19.99
stock_code = "003032"
growth_factor = 1.2
growth_days = 7

# 计算最终股价
final_price = stock_price * (growth_factor ** growth_days)

# 格式化输出
print(f"公司:{name},股票代码:{stock_code}")
print(f"当前股价:{stock_price:.2f}元")
print(f"每日增长系数:{growth_factor}")
print(f"经过{growth_days}天增长后,股价为:{final_price:.2f}元")

九、数据输入:与用户交互

9.1 input()函数基础

python

复制代码
# 基本输入
name = input("请输入您的姓名:")
print(f"您好,{name}!")

# 获取输入并转换类型
age_str = input("请输入您的年龄:")
age = int(age_str)  # 转换为整数
print(f"明年您将{age + 1}岁")

9.2 输入数据类型的特点

python

复制代码
# input()永远返回字符串
num_str = input("请输入一个数字:")
print(type(num_str))  # <class 'str'>

# 需要时手动转换
num = float(num_str)  # 转换为浮点数
print(f"数字的平方是:{num ** 2}")

9.3 实战:用户登录系统

python

复制代码
# 欢迎登录小程序
user_name = input("请输入用户名:")
user_type = input("请输入用户类型(VIP/普通用户):")

# 格式化输出欢迎信息
welcome_msg = f"欢迎{user_name}!您是{user_type}用户,祝您使用愉快!"
print("=" * 40)
print(welcome_msg)
print("=" * 40)

# 综合应用:计算器
num1 = float(input("请输入第一个数字:"))
num2 = float(input("请输入第二个数字:"))
operator = input("请输入运算符(+、-、*、/):")

if operator == "+":
    result = num1 + num2
elif operator == "-":
    result = num1 - num2
elif operator == "*":
    result = num1 * num2
elif operator == "/":
    result = num1 / num2
else:
    result = "无效运算符"

print(f"计算结果:{num1} {operator} {num2} = {result}")

十、综合实战练习

练习1:个人信息管理系统

python

复制代码
"""
综合运用所学知识,创建一个个人信息管理系统
功能:
1. 输入个人信息
2. 格式化显示信息
3. 计算年龄相关数据
"""

print("=" * 40)
print("个人信息管理系统")
print("=" * 40)

# 输入信息
name = input("请输入姓名:")
birth_year = int(input("请输入出生年份:"))
height = float(input("请输入身高(米):"))
weight = float(input("请输入体重(公斤):"))

# 计算信息
current_year = 2024
age = current_year - birth_year
bmi = weight / (height ** 2)

# 格式化输出
print("\n" + "=" * 40)
print("个人信息摘要")
print("=" * 40)
print(f"姓名:{name}")
print(f"年龄:{age}岁")
print(f"身高:{height:.2f}米")
print(f"体重:{weight:.1f}公斤")
print(f"BMI指数:{bmi:.1f}")

# 判断BMI状态
if bmi < 18.5:
    status = "偏瘦"
elif bmi < 24:
    status = "正常"
elif bmi < 28:
    status = "偏胖"
else:
    status = "肥胖"

print(f"体重状态:{status}")
print("=" * 40)

练习2:简易购物车系统

python

复制代码
"""
创建一个简易购物车系统
计算商品总价,考虑折扣和优惠
"""

# 商品价格
item1_price = 45.5
item2_price = 29.9
item3_price = 15.0

# 商品数量
item1_count = int(input("请输入商品1的购买数量:"))
item2_count = int(input("请输入商品2的购买数量:"))
item3_count = int(input("请输入商品3的购买数量:"))

# 计算小计
subtotal = (item1_price * item1_count + 
            item2_price * item2_count + 
            item3_price * item3_count)

# 应用折扣
discount_rate = 0.1  # 10%折扣
if subtotal > 100:
    discount = subtotal * discount_rate
else:
    discount = 0

# 计算总额
total = subtotal - discount

# 格式化输出账单
print("\n" + "=" * 50)
print("购物账单")
print("=" * 50)
print(f"{'商品':<10}{'单价':<10}{'数量':<10}{'小计':<10}")
print("-" * 50)
print(f"{'商品1':<10}{item1_price:<10.2f}{item1_count:<10}{item1_price*item1_count:<10.2f}")
print(f"{'商品2':<10}{item2_price:<10.2f}{item2_count:<10}{item2_price*item2_count:<10.2f}")
print(f"{'商品3':<10}{item3_price:<10.2f}{item3_count:<10}{item3_price*item3_count:<10.2f}")
print("-" * 50)
print(f"{'商品小计:':<30}{subtotal:>10.2f}元")
print(f"{'折扣优惠:':<30}{discount:>10.2f}元")
print(f"{'应付总额:':<30}{total:>10.2f}元")
print("=" * 50)

学习建议与总结

学习要点回顾

  1. 字面量是代码中直接写下的固定值

  2. 注释用于解释代码,不会被程序执行

  3. 变量是存储数据的容器,值可以改变

  4. 数据类型包括字符串、整数、浮点数等

  5. 类型转换需要在特定场景下进行

  6. 标识符命名要遵守规则和规范

  7. 运算符用于数据的各种运算

  8. 字符串处理是Python的强项

  9. input()函数用于获取用户输入

相关推荐
love530love6 小时前
LiveTalking 数字人项目 Windows 部署完全指南(EPGF 架构)
人工智能·windows·python·架构·livetalking·epgf
遇事不決洛必達6 小时前
【Python基础】GIL 锁是什么及其对爬虫的影响
爬虫·python·线程·进程·gil锁
CryptoPP7 小时前
快速对接东京证券交易所API数据:实战指南与代码示例
开发语言·人工智能·windows·python·信息可视化·区块链
探物 AI7 小时前
把 MambaOut 塞进 YOLOv11:会有什么样的反应
python·yolo·计算机视觉
如竟没有火炬8 小时前
最大矩阵——单调栈
数据结构·python·线性代数·算法·leetcode·矩阵
阳区欠8 小时前
【LangChain】LLM基础介绍
开发语言·python·langchain
Cosolar8 小时前
保姆级 CrewAI 教程:从零构建多智能体协作系统
人工智能·python·架构
GDAL8 小时前
使用 uv 管理 Python 版本
python·uv·版本
真实的菜8 小时前
Redis 从入门到精通(十二):典型业务场景实战 —— 排行榜、限流器、秒杀系统、Session 共享
数据库·redis·python
cup119 小时前
[开源] Meta Assistant / 告别命令行,我为一堆 Python 脚本做了一个 Windows 任务栏的“家”
windows·python·工具·nuitka·脚本运行