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

1.1.1数据类型与变量——AI教你学Django

1.1.1 数据类型与变量(Django 基础学习细节)

Python 作为 Django 的基础,理解其数据类型和变量的使用至关重要。下面将详细讲解常见数据类型、变量声明、类型转换以及字符串格式化方法。

一、基础数据类型

1. int(整数)

  • 表示整数类型,如 1-100
  • 支持任意精度计算
  • 示例:
    a = 10
    b = -3
    print(type(a))  # <class 'int'>
    

2. float(浮点数)

  • 表示带小数点的数,如 3.14-0.001
  • 注意浮点精度问题
  • 示例:
    pi = 3.14159
    print(type(pi))  # <class 'float'>
    

3. str(字符串)

  • 一串字符,单引号或双引号包裹,如 'hello'"world"
  • 支持多行字符串(用三引号)
  • 示例:
    name = "Django"
    desc = '''This is
    a multi-line
    string.'''
    print(type(name))  # <class 'str'>
    

4. bool(布尔型)

  • 只有两个值:TrueFalse
  • 常用于条件判断
  • 示例:
    is_valid = True
    print(type(is_valid))  # <class 'bool'>
    

二、复合数据类型

1. list(列表)

  • 有序、可变、用方括号 [] 表示
  • 元素可以是任意类型,支持嵌套
  • 支持切片、增删改查
  • 示例:
    nums = [1, 2, 3, 4]
    nums.append(5)
    nums[0] = 99
    print(nums[1:3])  # [2, 3]
    

2. tuple(元组)

  • 有序、不可变、用小括号 () 表示
  • 适合存储不希望被修改的数据
  • 示例:
    t = (10, 20, 30)
    print(t[1])  # 20
    # t[0] = 100  # 会报错
    

3. set(集合)

  • 无序、不重复元素、用花括号 {} 或 set() 创建
  • 支持集合运算(交、并、差等)
  • 示例:
    s = {1, 2, 3}
    s.add(2)
    s.add(4)
    print(s)  # {1, 2, 3, 4}
    

4. dict(字典)

  • 键值对集合、用花括号 {} 表示
  • 键唯一、值任意、查找速度快
  • 示例:
    user = {"name": "Alice", "age": 23}
    user["email"] = "alice@example.com"
    print(user["name"])  # Alice
    

三、类型转换

  • int(x):转为整数
  • float(x):转为浮点数
  • str(x):转为字符串
  • bool(x):转为布尔值
  • list(x):转为列表(如字符串转字符列表、元组转列表)
  • tuple(x):转为元组
  • set(x):转为集合
  • dict():构造字典(通常配合 [(key, value), …])

示例:

a = "123"
b = int(a)        # 123
c = float(a)      # 123.0
d = str(456)      # "456"
e = bool(0)       # False
f = list("abc")   # ['a', 'b', 'c']
g = tuple([1,2])  # (1, 2)
h = set([1,2,2])  # {1, 2}

四、字符串格式化

1. 百分号 % 格式化(经典写法)

name = "Tom"
age = 18
print("My name is %s, age is %d" % (name, age))

2. format() 方法(推荐)

print("My name is {}, age is {}".format(name, age))
print("My name is {0}, age is {1}".format(name, age))
print("My name is {name}, age is {age}".format(name="Tom", age=18))

3. f-string(Python 3.6+,最推荐)

print(f"My name is {name}, age is {age}")

f-string 支持表达式:

print(f"2 + 3 = {2 + 3}")

五、变量声明与命名规范

  • 变量无需声明类型,直接赋值即可
  • 命名建议使用小写字母+下划线(PEP8风格),如 user_name
  • 变量名区分大小写

六、实用小结

  • 充分理解基本类型和数据结构,是后续 Django ORM、视图、模板等用法的基础
  • 字典和列表在 Django 模型、序列化、API数据处理中极为常见
  • 熟练掌握字符串格式化,有助于模板渲染和日志输出
http://www.lryc.cn/news/584704.html

相关文章:

  • SQLite3 中列(变量)的特殊属性
  • 【c++八股文】Day6:using和typedef
  • MiniGPT4源码拆解——models
  • vscode和插件用法
  • imx6ull-裸机学习实验17——SPI 实验
  • 【会员专享数据】2013-2024年我国省市县三级逐年SO₂数值数据(Shp/Excel格式)
  • Jaspersoft Studio-6.4.0 TextField内容展示不全
  • 【大模型推理论文阅读】 Thinking Tokens are Information Peaks in LLM Reasoning
  • 设计模式的六大设计原则
  • vue3 element plus table 使用固定列,滑动滚动会错位、固定列层级异常、滑动后固定列的内容看不到了
  • 二刷 黑马点评 短信登陆功能
  • MatrixOne Intelligence v3.3 正式发布:结构化、自动化、可视化三重进化
  • 告别繁琐:API全生命周期管理的新范式——apiSQL
  • Android 网络开发核心知识点
  • 鸿蒙智行6月交付新车52747辆 单日交付量3651辆
  • android studio 运行,偶然会导致死机,设置Memory Settings尝试解决
  • OneFileLLM:一键聚合多源信息流
  • Logback日志框架配置实战指南
  • 浏览器 实时监听音量 实时语音识别 vue js
  • [特殊字符] ROM 和 RAM 知识点系统总结
  • C++中的左值、右值与std::move()
  • selenium中find_element()用法进行元素定位
  • 实时风险监控系统工具设计原理:2025异常检测算法与自动化响应机制
  • QT解析文本框数据——详解
  • 重新配置电脑中的环境变量
  • 安装VMware详细步骤
  • CIEDE2000 色差公式C++及MATLAB实现
  • Ansible:强大的自动部署工具
  • 国内如何考取Oracle大师
  • 解决问题的“测地线”:关于第一性原理与其他系统思考框架