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()函数用于获取用户输入

相关推荐
sunfove2 小时前
实战篇:用 Python 徒手实现模拟退火算法解决 TSP 问题
开发语言·python·模拟退火算法
我是菜鸟0713号3 小时前
Qt + Python 算法集成的一种低耦合实践:FastAPI 服务化方案
python·qt·fastapi
我是一只小青蛙8883 小时前
TraeCNIDE Python开发全流程指南
python
欣然~3 小时前
法律案例 PDF 批量转 TXT 工具代码
linux·前端·python
季布,3 小时前
本地Windows测试:钉钉群消息/文件传输到Python服务(完整教程)
windows·python·钉钉
zm-v-159304339863 小时前
最新AI-Python自然科学领域机器学习与深度学习技术
人工智能·python·机器学习
qwerasda1238523 小时前
Mask-RCNN右转交通标志识别训练与优化
python
郝学胜-神的一滴4 小时前
何友院士《人工智能发展前沿》全景解读:从理论基石到产业变革
人工智能·python·深度学习·算法·机器学习
划水的code搬运工小李4 小时前
自制py功能包解析IMU航迹推算
python·imu·航迹推算