Python 教程(二):语法与数据结构
创始人
2024-11-21 23:05:35
0

目录

    • 前言
    • 专栏列表
    • 语法特点
    • 实例代码
    • 基本数据类型
    • 变量
      • 命名规则
      • 赋值
      • 动态类型
      • 作用域
      • 示例代码
    • 运算符
    • `list`、`set`和`dict` 数据结构 区别
      • 1. list(列表)
      • 2. set(集合)
      • 3. dict(字典)
    • 总结

前言

Python 是一种计算机编程语言。每种编程语言都有自己的语法规则。在本教程中,我们将学习 Python 的基本语法。

专栏列表

  • Python教程(一):环境搭建及PyCharm安装
  • Python 教程(二):语法与数据结构

在这里插入图片描述

正文开始如果觉得文章对您有帮助,请帮我三连+订阅,谢谢💖💖💖


语法特点

  • 简单性:Python 的语法设计简单,易于阅读和编写。
  • 缩进:Python 使用缩进来区分代码块,增强了代码的可读性。
  • 注释:以 # 开头的语句是注释,解释器会忽略这些内容。
  • 代码块:语句以冒号 : 结尾时,后续的缩进语句被视为代码块。
  • 大小写敏感:Python 是大小写敏感的语言,变量名的大小写会影响其含义。
  • 动态类型:Python 是动态类型语言,变量在声明时不需要指定类型。

实例代码

# 打印变量实例 a = 100  # 变量 a 声明和赋值 if a >= 0:  # 下面是代码块     print(a)  # 使用 print 函数打印变量值 else:     print(-a) 

基本数据类型

Python 提供了多种基本数据类型,每种类型都有其特定的用途和特性。

  1. 整数(int):表示没有小数点的数字。

    a = 10 b = -20 print(a + b) 
  2. 浮点数(float):表示有小数点的数字。

    a = 3.14 b = -0.001 print(a * b) 
  3. 字符串(str):表示文本数据。

    name = "ziyu" print("Hello, " + name) 
  4. 布尔值(bool):表示逻辑值,只有 True 或 False。

    is_active = True print(is_active) 
  5. 列表(list):有序的集合,可以包含不同类型的元素。取值下标从0开始。

    fruits = ["apple", "banana", 123] print(fruits[2])  # 输出 123 
  6. 元组(tuple):类似于列表,通过 () 定义,但定义后不可变。

    point = (10, 20) point = (10,)  # 只有1个元素的tuple定义时必须加一个逗号 print(point[0]) 
  7. 字典(dict):无序的键值对集合。

    person = {"name": "ziyu", "age": 25} print(person["name"]) 
  8. 集合(set):无序的不重复元素集合。

    numbers = {1, 2, 3} print(numbers) 
  9. 空值(None):Python 中的特殊值,用 None 表示。

    d = {}  d.get('name')  # 返回 None,控制台不输出任何东西 
  10. 常量:通常用全部大写的变量名表示常量。

    PI = 3.14159265359  PI = 4.13  # 不推荐这样做 

变量

变量是存储数据值的容器。在 Python 中,变量在使用前不需要声明数据类型。

命名规则

  • 变量名必须以字母或下划线开头。
  • 变量名只能包含字母、数字和下划线。
  • 变量名是区分大小写的。

赋值

使用 = 操作符将值赋给变量。

x = 5 message = "Hello, World!" 

动态类型

Python 是一种动态类型语言,变量的类型在运行时自动确定。

x = 10         # x 是 int 类型 x = "hello"    # x 现在是 str 类型 

作用域

变量的作用域决定了变量在程序中的可见性和生命周期。

  • 局部变量:在函数内部定义,只能在该函数内部访问。
  • 全局变量:在函数外部定义,可以在程序的任何地方访问。

示例代码

# 定义变量 name = "ziyu" age = 25 height = 175.5  # 打印变量 print("Name:", name) print("Age:", age) print("Height:", height)  # 定义列表 fruits = ["apple", "banana", "cherry"]  # 访问列表中的元素 print("Fruit at index 1:", fruits[1])  # 定义字典 person = {"name": "ziyu", "age": 25}  # 访问字典中的元素 print("Person's name:", person["name"])  # 定义集合 numbers = {1, 2, 3}  # 打印集合 print("Numbers:", numbers) 

运算符

Python 中的运算符用于执行数学和逻辑运算。

  • /:除法,计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数。
  • //:地板除,两个整数的除法结果仍然是整数。
  • %:取余数,结果永远是整数,整数运算结果永远是精确的。
10 / 3  # 3.3333333333333335 9 / 3   # 3.0  10 // 3 # 3  10 % 3  # 1 

listsetdict 数据结构 区别

我们将对每个结构的增(增加)、删(删除)、查(查询)、改(修改)进行练习。

1. list(列表)

  • 有序:元素的插入顺序会被保留。
  • 可重复:元素可以重复。
  • 可索引:可以通过索引访问元素。
  • 可变:可以修改内容。
  • 语法:使用方括号 [] 定义。

示例

my_list = [1, 2, 3, 4] print(my_list[0])  # 获取: 输出 1  my_list.append(5)  # 添加元素,在列表尾部添加 5 print(my_list)     # 输出 [1, 2, 3, 4, 5]  my_list.pop(0)  # 删除索引下标元素,这里就是在0这个位置上删除1 print(my_list)     # 输出 [2, 3, 4, 5]  my_list.insert(0, 1)  # 添加索引下标元素,这里就是在0这个位置上增加1 print(my_list)     # 输出 [1, 2, 3, 4, 5]  my_list[0] = 6  # 修改:这里就是在0这个位置上修改成6 print(my_list)     # 输出 [6, 2, 3, 4, 5] 

2. set(集合)

  • 无序:元素的插入顺序不会被保留。
  • 不重复:元素是唯一的。
  • 不可索引:不能通过索引访问元素。
  • 可变:可以修改内容。
  • 语法:使用花括号 {} 定义,或使用 set() 函数转换。

示例

my_set = {1, 2, 3, 4} my_set.add(5)  # 添加元素 5 print(my_set)  # 输出 {1, 2, 3, 4, 5},但元素顺序可能不同  my_set.remove(3)  # 删除元素 3 print(my_set)  # 输出 {1, 2, 4, 5}  # 获取集合的长度 len(my_set)  # 4  # 清空集合 my_set.clear()  # 判断元素是否在集合中存在 'x' in my_set  # False 

3. dict(字典)

  • 无序:元素的插入顺序不会被保留。
  • 键值对:由键值对组成,键是唯一的。
  • 可索引:可以通过键访问值。
  • 可变:可以修改内容。
  • 语法:使用花括号 {} 定义,键和值之间用冒号 : 分隔。

示例

my_dict = {"name": "ziyu", "age": 25} print(my_dict["name"])  # 输出 ziyu my_dict["age"] = 26  # 修改键 "age" 对应的值 print(my_dict)  # 输出 {"name": "ziyu", "age": 26} my_dict["gender"] = "Male"  # 添加新的键值对 print(my_dict)  # 输出 {"name": "ziyu", "age": 26, "gender": "Male"}  my_dict.pop('name')  # 删除键 "name" print(my_dict) 

总结

  • 有序性:list 是有序的,set 和 dict 是无序的。
  • 重复性:list 可以包含重复元素,set 不能包含重复元素,dict 的键不能重复,但值可以。
  • 索引:list 和 dict 可以通过索引访问元素,set 不能。
  • 元素组成:list 由元素组成,set 由元素组成,dict 由键值对组成。

这些特性使得这三种数据结构在不同的场景下有不同的应用。例如,当你需要保持元素顺序并可能需要索引时,可以使用 list;当你需要一个不包含重复元素的集合时,可以使用 set;当你需要通过键来快速访问数据时,可以使用 dict。

相关内容

热门资讯

透视透视!wepoker辅助插... 透视透视!wepoker辅助插件功能(透视)底牌透视挂辅助器(可靠开挂辅助AI教程)-哔哩哔哩;透视...
专业讨论!"好运大菠... 专业讨论!"好运大菠萝有挂"详细外挂透明挂辅助器-原生有挂(哔哩哔哩);好运大菠萝有挂软件透明挂作为...
第六分钟了解!德友汇开挂脚本(... 您好,德友汇开挂脚本这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这...
8分钟了解(PYQ1.VIP)... 8分钟了解(PYQ1.VIP)外挂辅助插件安装app(透视)必备教程(2023已更新)(哔哩哔哩);...
透视实锤!hhpoker为有挂... 透视实锤!hhpoker为有挂一直输(透视)底牌透视挂辅助系统(可靠开挂辅助实用技巧)-哔哩哔哩;h...
2分钟细说"鱼扑克发... 2分钟细说"鱼扑克发牌规律"详细外挂透明挂辅助神器-总是有挂(哔哩哔哩);是一款可以让一直输的玩家,...
第六分钟了解!蜀山四川破解版安... 第六分钟了解!蜀山四川破解版安卓版(辅助挂)详细透视开挂辅助辅助教程(确实真的是有挂)-哔哩哔哩;蜀...
7分钟了解(wpk后台)外挂辅... 7分钟了解(wpk后台)外挂辅助插件安装下载(透视)细节揭秘(2024已更新)(哔哩哔哩);wpk后...
透视计算!约局吧是否有挂(透视... 透视计算!约局吧是否有挂(透视)底牌透视挂辅助程序(可靠开挂辅助新2025教程)-哔哩哔哩;小薇(透...
我来分享"德州wpk... 我来分享"德州wpk辅助"详细外挂透明挂辅助黑科技-切实存在有挂(哔哩哔哩);1、点击下载安装,德州...