当前位置: 首页 > news >正文

【Python实战】零基础实战教程(三) 变量与数据类型

【Python实战】零基础Python实战教程

  • 前言
  • 一、变量(Variables)
    • 1、What is Variables (变量是什么) ?
    • 2、变量注解(Variable Annotation)语法
    • 3、变量命名规则
      • 3.1 核心规则(必须遵守)
        • 3.1.1 合法字符
        • 3.1.2 保留关键字禁止使用
        • 3.1.3 大小写敏感
      • 3.2 命名风格规范(PEP 8标准)
      • 3.3 命名原则(最佳实践)
        • 3.3.1 描述性命名
        • 3.3.2 长度平衡
        • 3.3.3 避免歧义
      • 3.4 特殊场景规范
        • 3.4.1 避免内置名称
        • 3.4.2 布尔值命名
        • 3.4.3 集合类型命名
        • 3.4.4 临时变量
      • 3.5 常见错误示例与修正
      • 3.6 工具支持
      • 3.6.1 IDE 检查
        • 3.6.2 静态检查工具
        • 3.6.3 自动格式化
  • 二、数据类型(Data Types)
    • 1、数值类型(Numbers)
      • 1.1 整数(int)
      • 1.2 浮点数(float)
      • 1.3 复数(complex)
        • 1.3.1 为什么用 j 而不是 i?
        • 1.3.2 复数的组成
        • 1.3.3 应用场景
      • 1.4 布尔值(Boolean)
      • 1.5 字符串(String)
      • 1.5.1 字符串创建
        • 1.5.2 单引号和双引号的区别
        • 1.5.3 转义字符
        • 1.5.4 字符串操作
      • 1.6 列表(List)—— 可变序列
        • 1.6.1 创建列表
        • 1.6.2 列表操作
      • 1.7 列表推导式(List Comprehension)
      • 1.8 元组(Tuple)—— 不可变序列
      • 1.8.1 创建元组
      • 1.8.2 元组特性
      • 1.9 类型转换(Type Conversion)
        • 1.9.1 常用转换函数
        • 1.9.2 注意事项
  • 三、总结
    • 1. 核心知识点回顾
    • 2. 学习建议
  • 四、结语

在这里插入图片描述

前言

好久没写博客了,还是坚持一下,继续这次关于Python基础的教程。

关于上一章,Python环境管理器pip的使用教程。

如果有同学还需要加深印象的话,可以点击右边传送门:【Python实战】零基础实战教程(二) pip?

今天即将带大家来探索的是Python的 【变量和数据类型】

这个是 Python 中最基础但又最重要的概念,这次带大家深入浅出。

掌握这些内容后,你就能在实战中处理各种数据,并为后续的控制流、函数、面向对象等知识做好铺垫。

基础打好了后,才能用Python来大杀四方!嘿嘿!


在这里插入图片描述

一、变量(Variables)

1、What is Variables (变量是什么) ?

变量:是程序运行时用于存储数据的“容器”。

在 Python 中,你不需要显式声明变量的类型,只需给它赋值即可。

# 整型
x = 10
# 字符串
name = "Tony"
# 布尔值
is_valid = True

上述例子的语法虽然简洁又直接,但 非 常 不 推 荐

弊端如下:

  1. 代码可读性和可维护性降低。
value = 42       # 整数
value = "Hello"  # 字符串
value = [1, 2]   # 列表
value = 3.14     # 浮点数

问题:其他开发者(或未来的你)难以理解变量的预期用途。
后果:增加调试难度,代码变得脆弱。

  1. 运行时错误风险增加。
total = 0
# for循环
for i in range(10):if i % 2 == 0:total = total + i   # 整数加法else:total = str(total)  # 突然变成字符串total += "!"        # 字符串拼接# 下一行会崩溃!
result = total * 2  # TypeError: 字符串不能和整数相乘

问题:类型相关的操作可能在意外位置崩溃。
后果:难以追踪的TypeError异常。

  1. 性能影响。

    虽然Python本身是动态类型语言,但频繁类型变更会影响:

    • 解释器优化:CPython的字节码优化器难以推断类型。
    • 内存分配:每次类型变更都需重新分配内存。
    • 缓存局部性:不同类型对象内存布局不同,降低CPU缓存命中率。
# 性能测试对比
import timeit# 固定类型
def stable_type():x = 0for i in range(10000):x = i  # 始终整数# 动态类型
def dynamic_type():x = 0for i in range(10000):x = i if i % 2 else str(i)  # 交替整数/字符串print("固定类型:", timeit.timeit(stable_type, number=1000))
print("动态类型:", timeit.timeit(dynamic_type, number=1000))# 典型结果:
# 固定类型: 0.8秒
# 动态类型: 1.5秒 (慢约2倍)
  1. 开发工具(IDE)支持失效。

    • 类型检查器(如mypy)无法提供有效静态检查。
    • IDE自动补全失效(无法推断变量类型)。
    • 文档生成工具无法确定参数/返回类型。
  2. 设计缺陷的信号。

    • 变量被用于多个不相关的目的(违反单一职责)。
    • 缺少合理的抽象(应使用不同变量或类封装)。
    • 数据处理流程设计混乱。

2、变量注解(Variable Annotation)语法

这个语法主要是用来给变量加上类型提示。

推荐语法如下:

# 整型
x: int = 10
# 字符串
name: str = "Tony"
# 布尔值
is_valid: bool = True

在大型项目上,Python语言的维护难度是很高的,有一部分原因是因为变量的类型没有约束,也没有相应的注释导致的。

这个变量注解的语法的优势如下:

  1. 提高代码可读性和可维护性(方便自己也方便他人)
  2. 降低运行时错误风险(不同数据类型交叉赋值)
  3. 性能提高(既定类型变量不需要重新分配内存)

3、变量命名规则

3.1 核心规则(必须遵守)

3.1.1 合法字符
  • 首字符:字母(a-z, A-Z)或下划线 _ 。
  • 后续字符:字母、数字(0-9)、下划线 _ 。
  • 禁止:空格、连字符 -、特殊符号(如 @, $, # 等)。
# 合法
user_name = "Alice"
_count = 10
total2 = 30# 非法
2nd_place = "Bob"  # 不能以数字开头
user-name = "Charlie"  # 不能包含连字符
$price = 9.99  # 不能包含特殊符号
3.1.2 保留关键字禁止使用
  • 不能使用 Python 关键字(如 if, for, while, class 等)。
# 错误示例
class = "Computer Science"  # SyntaxError
3.1.3 大小写

相关文章:

  • GQA(Grouped Query Attention):分组注意力机制的原理与实践《二》
  • 武汉火影数字|互动多媒体展项打造:开启沉浸式互动体验
  • 【Cursor】开发chrome插件,实现网页tab根据域名分组插件
  • 2025年- H67-Lc175--295.数据流中的中位数(小根堆,大根堆)--Java版
  • Mermaid 绘图--以企业权限视图为例
  • fastadmin+workman环境搭建
  • 光量子计算芯片改变了黄仁勋成见?英伟达拟与PsiQuantum联手颠覆未来算力
  • python第42天打卡
  • linux扫描所有私有网段shell脚本
  • UART协议调试遇到的一个问题
  • 《高等数学》(同济大学·第7版)第一章第五节《极限运算法则》
  • AReaL-boba²:开源异步强化学习训练系统的革命性突破
  • mysq进化
  • 数据结构与算法:动态规划中根据数据量猜解法
  • 如何应对敏捷转型中的团队阻力
  • 题海拾贝:P2347 [NOIP 1996 提高组] 砝码称重
  • CSP is what?
  • 电路设计基础-2
  • unix/linux,sudo,其基本概念、定义、性质、定理
  • UCRT 和 MSVC 的区别(Windows 平台上 C/C++ 开发相关)
  • 太原网站建设公司招聘/网站设计公司排行
  • 江苏住房和城乡建设厅网站首页/百度seo网站在线诊断
  • 字体设计在线转换器/seo研究中心倒闭
  • 博彩网站怎么做代理/在线网页生成器
  • 南阳做网站哪个好/营销方案设计思路
  • 泰安市网站建设/灰色词排名上首页