Python的循环结构与数据结构概述

知识概述:

循环结构:

什么叫做循环?

周而复始则称为循环。其为了简化代码,避免重复代码的出现。

While循环的语法结构:

Break,continue关键字

break关键字:
打断终止循环,,break只能终止离他最近的上层循环。

Continue关键字:结束本次循环,进入下一次循环。

for循环

For循环在python中是用来迭代数据的  for循环可以遍历无序的数据,注意:while只能遍历有序数列。

range函数

Range(num)表示[0,num]的区间所有整数

Range(start ,end)的区间所有整数

Range(start ,end,step)表示(start,end)的区间所有整数,step表示步长

内容一览:

  1. 容器篇——内置容器
  2. 数据结构的概述知识{(线性表)(哈希表)(树)}
  3. List
  4. Set
  5. Tuple
  6. dict

数据结构的概述

容器:存储大量数据的一种数据结构,也叫做数据结构。

线性表:顺序表,也是将数据按照特定的顺序存储的一种结构。

常见线性表:

  1. 数组 Array:连续的内存结构,大小固定
  2. 链表 list:内存可以随意变化,内存不一定连续
  3. 栈 stack:先进后出(FILO)、后进先出(LIFO)
  4. 队列 queue:先进先出(FIFO),后进后出(LILO)

内置容器——list

Python为开发者提供的一个线形表,底层采用了双向链表结构。

注意:在Python,js等弱数据类型的编程语言中,是不存在真正意义上的数据结构

如何创建和定义list列表:

变量 = []

借助全局函数,将一个可迭代对象转换为列表

变量=list(iterable)

变量 = list()

获取列表的长度及元素:

Len(list)

Len函数获取容器的函数,通过下标访问元素

eg:a[0]访问列表的第一个数据  注意:下标是从0开始的

注意:下标越界问题!!!

遍历列表:

arr = [1,2,3,4,5,6,7,8,9,77,88]

# while循环

I = 0

While i < len(arr):

Print(arr[i])

I += 1

for循环:

For i in arr:

Print(i)

线性表的遍历,建议使用枚举遍历的方式。

全局函数:enumerate

For key,value in enumerate(arr):

Print (key,value)

#遍历数据的时候,可以获取对应的下标

Pop([index=1])

Remove()

Clear()

Set集合:

是一种内置的数据结构,采用了hash table实现的一个哈希表。

哈希表的特点:

  1. 元素不能重复
  2. 无序性

定义和创建哈set

s ={1,2,3,45,}

s={} 注意:这样创建的空的{},默认类型是dict,而不是Set

ss = set()

ss=set(可迭代对象)

ss = set("mahaotian ")

ss=set(arr)

ss = set({1,2,3,45,5})

Set集合没有角标,也就是不能使用下标访问元素和修改元素 遍历Set

一定注意:set只能使用for循环,迭代遍历,而无法使用while 常见方法

['add','clear', 'copy', 'difference',

'difference_update', 'discard', 'intersection','intersection_update', 'isdisjoint', 'issubset','issuperset', 'pop', 'remove','symmetric_difference',

'symmetric_difference_update', 'union', 'update']+ add()

+ add()

+ clear()

+copy()+pop()+ remove()

+ union()

+ intersection()

+ difference()### tuple 元组

元组:定义了一批不在变化的固定的值,如季节、五行、星座、性别。

注意:元组是一个 不可变数据类型。

基本数据类型(数值型、布尔类型、字符串) 也是不可变数据类型

dict字典

字典类型底层也是基于哈希表实现的。也就是说,dict这种类型,是由一对一对的键值对组成 定义字典“python d= {}

d ={"name": "疾风剑豪","age": 35, "nickname": "亚索","adddress":"峡谷"} d["name"]

d["tel"]="110120"

 字典的常见方法

['clear', 'copy', 'fromkeys', 'get', 'items', 'keys','pop', 'popitem','setdefault', 'update','values']

+clear() vleur

+copy()+get()`python d.get("name") d.get("name2")

d.get("name2","你好") d.get("name","world")

….

+pop(key)+popitem()

+items()

+fromkeys()+ update()

字典的遍历

for key in d.keys():

print(key, d.get(key))

for key in d.keys(): print(key, d[key])

for key in d:

print(key, d.get(key))

for i in d.items(): print(i[0],i[1])

for (key, value) in d.items(): print(key, value)

for key, value in d.items(): print(key, value)

相关推荐

  1. Python循环结构数据结构概述

    2024-03-19 12:58:05       45 阅读
  2. 算法数据结构 循环队列 (C++)

    2024-03-19 12:58:05       41 阅读
  3. Python 数据结构算法

    2024-03-19 12:58:05       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-19 12:58:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-19 12:58:05       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-19 12:58:05       82 阅读
  4. Python语言-面向对象

    2024-03-19 12:58:05       91 阅读

热门阅读

  1. spring启动自动执行方法

    2024-03-19 12:58:05       47 阅读
  2. Linux 查看防火墙相关命令

    2024-03-19 12:58:05       40 阅读
  3. word的第六课笔记

    2024-03-19 12:58:05       41 阅读
  4. 每日一题 第十一期 洛谷 进制转换

    2024-03-19 12:58:05       39 阅读
  5. PyTorch的向量化思维,以及Tensor、nn接口

    2024-03-19 12:58:05       43 阅读
  6. C++ day6

    C++ day6

    2024-03-19 12:58:05      41 阅读
  7. 面试题(补充)

    2024-03-19 12:58:05       46 阅读
  8. openxml对worksheet数值化

    2024-03-19 12:58:05       37 阅读