当前位置: 首页 > 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.xdnf.cn/news/1099045.html

相关文章:

  • 一文讲清楚React Hooks
  • Spring for Apache Pulsar->Reactive Support->Quick Tour
  • 【C++】——类和对象(上)
  • C语言<数据结构-链表>
  • Django专家成长路线知识点——AI教你学Django
  • 深度学习参数初始化方法详解及代码实现
  • WebSocket实战:实现实时聊天应用 - 双向通信技术详解
  • [数据结构与算法] 优先队列 | 最小堆 C++
  • C语言——预处理详解
  • Swift 图论实战:DFS 算法解锁 LeetCode 323 连通分量个数
  • 第一次搭建数据库
  • 【macos用镜像站体验】Claude Code入门使用教程和常用命令
  • B2、进度汇报(— 25/06/16)
  • 【Python进阶篇 面向对象程序设计(7) Python操作数据库】
  • Duplicate cleaner pro 的使用技巧
  • 专题:2025供应链数智化与效率提升报告|附100+份报告PDF、原数据表汇总下载
  • 【fitz+PIL】PDF图片文字颜色加深
  • 阿里云错题集分享
  • linux-MySQL的安装
  • Centos 7下使用C++使用Rdkafka库实现生产者消费者
  • 介绍 cnpm exec electron-packager
  • Kafka的无消息丢失配置怎么实现
  • Chromium 引擎启用 Skia Graphite后性能飙升
  • 在徐州网络中服务器租用与托管的优势
  • 机器学习13——支持向量机下
  • 大数据时代UI前端的智能化升级:基于机器学习的用户意图预测
  • Qt开发:QtConcurrent介绍和使用
  • RocksDB 与 ZenFS:原理、特性及在科研与工程中的应用初步探索
  • 配置双网卡Linux主机作为路由器(连接NAT网络和仅主机模式网络)
  • systemd服务脚本详解与管理命令