Python基础知识(二)

目录

一、Python顺序结构

二、Python条件结构

三、Python循环结构

3.1、while模式

3.2、do...while模式

3.3、for 模式

3.4、嵌套循环语句

3.5、break和continue

四、Python数据类型

4.1、数字类型

4.1.1、整型(int)

4.1.2、浮点型(float)

4.1.3、复数型(complex)

4.1.4、布尔型(bool)

4.1.5、数值运算符

4.2、字符串类型

4.2.1、转义字符

4.2.2、raw字符串

4.2.3、字符串操作

4.2.4、字符串格式化

4.3、列表类型

4.3.1、列表操作

4.3.2、列表函数

4.4、元组类型

4.4.1、元组操作

4.4.2、元组函数

4.5、字典类型

4.5.1、字典操作

4.5.2、字典遍历

4.5.3、字典函数

4.6、集合类型

4.6.1、集合操作

4.6.2、不可变集合

4.5.3、集合函数

​编辑


一、Python顺序结构

定义:顺序结构是最常见的默认语句结构,可理解为程序由上至下,由前到后,依照顺序一步步执行每条语句。下图做简要介绍:        

 顺序结构代码:     

 

顺序结构为程序默认执行结构,在本地依照步骤一步步书写的代码均可以涵盖在该结构中

二、Python条件结构

  定义:条件结构是通过对判断语句的判断,决定程序运行的方向。如下图结构所示:

    

 

(此图为双分支结构,同时还存在多分枝结构和单分支结构)

条件结构代码:

单分支结构:

 双分支结构:

 多分支结构:

  选择嵌套结构:

 

三、Python循环结构

  定义:针对一些需要重复执行的代码段,此时循环结构便能满足该需求。

  循环结构一共有三种模式:while、do....while、for,下面针对这三种模式进行介绍

3.1、while模式

  While循环中也可以嵌套条件语句进行判断,通过break,continue去跳转

3.2、do...while模式

在python中没有提供这类写法,故省略。

3.3、for 模式

 

  for循环用于遍历一个序列(列表,元组,字典,集合或字符串),此时书写格式为:

  For i in **kwargs(*list/tuple/string)

For循环也可以通过range函数限定循环的指定次数,range函数默认从0开始,递增1,直到指定数字结束循环,书写格式为:

For i in range(x,y,z)  x为起始数字/y是结束数字/z为步长,即每次递增数

注意,range(5)代表0,1,2,3,4,其中不包含5

3.4、嵌套循环语句

  循环嵌套语句,外循环执行一轮,内循环执行所有轮次。

3.5、break和continue

共同点:两个均为关键字,且只能运用在循环中。

不同点:1、break终止循环继续执行,直接跳出循环

              2、continue只是结束本次循环,即本次循环后续步骤不会再执行,但跳出后仍旧回进行该循环体的下一次循环调用。

四、Python数据类型

Python数据类型分为基本数据类型复合数据类型,且在python中,变量不需要声明数据类型

基本数据类型:数字、字符串

复合数据类型:列表、元组、字典、集合

我们一个个来看:

4.1、数字类型

数字类型是python中基本数据类型之一,其中细分又包含int(整型4字节)、complex(复数 3字节(utf-8))、float(浮点型 8字节)、bool(布尔型,1字节)

4.1.1、整型(int)

整型表示形式:

  1. 二进制:以”0b”开头  (0b10010)
  2. 八进制:”0o”或”0O”开头  (0o574)
  3. 十进制:直接书写10、20、30   (123,1245)
  4. 十六进制:以”0x”或”0X”开头  (0xFA13)

整型切换:

  1. bin():十进制转换为二进制,输出形式是字符串
  2. oct():十进制转换为八进制,输出形式是字符串
  3. hex():十进制转换为十六进制,输出形式是字符串
  4. int() :接收一个符合整型规范的字符串,并将字符串转换为整型

注意点:

        1、Python中当多个变量的值相同时,这个值在内存中并没有被保存多次,只是多个变量都指向了同一内存

         2、当a值发生变化时,a的引用地址变了,b、c的引用地址未变化

   由此可得出一个结论:

     数字类型在python中做修改时,并不是针对当前地址内数值进行修改,它是把新的值放在新的内存地址中,然后修改变量所指向的地址ID。Python自身具备内存管理功能,当一个值的地址没有任何变量指向时,则进行自动删除操作,即自身具备内存自动回收机制。

 

4.1.2、浮点型(float)

浮点型表示形式:

1、X.Y(X为整数位,Y为小数位)

2、XeY(科学计数法,含义为X*10^Y)

3、python中浮点数为双精度,故占8个字节

4.1.3、复数型(complex)

复数型表示形式:

  1. a+bj
  2. Complex(a,b)(a是实部,b表示虚部)

函数获取:

1、print(a.imag) # .imag可以获取复数的虚部

2、print(a.real) # .real可以获取复数的实部

3、print(a.conjugate()) # .conjugate()方法可以获取复数的共轭复数

4.1.4、布尔型(bool)

布尔型表示形式:

1、0为False

2、1为True

布尔型运算:and(&&)、or(||)、not

  1. a and b 如果a是false,则整个判定结果必然是false
  2. a or b 如果a是true,则整个判定结果必然是true

4.1.5、数值运算符

常见运算符为:加(+)、减(-)、乘(*)、除(/)、整除(//向下取整)、余(%)、幂(**)

4.2、字符串类型

 表示形式:

  1. 单引号:’XXXX’
  2. 双引号:”XXXXX”
  3. 三引号:”””xxxxxx”””  块字符串

4.2.1、转义字符

在python中,我们用反斜杠(\)表示转义字符,目的是为了对后面紧跟字符进行转义,将其特殊函数屏蔽掉。

常用形式:

 

4.2.2、raw字符串

书写方法:

test=open(rC:\PYTHON.txt)

在raw字符串中,所有的字符都是直接按照字面意思来解释,没有转义字符或者不能打印的字符。

4.2.3、字符串操作

1、索引:字符串作为有序字符的集合,其每一位索引是按照顺序的,从0开始索引第一个字符,后续索引号逐渐加1,在索引时不能索引数值越界,程序会报错

2、切片:利用分片操作,对字符串进行提取.书写格式为:S[1:10:2]获取S字符串中索引下标1到9、且每隔一个字符取一个元素的子字符串(左闭右开)

    特殊S[::-1]——————此表达式含义为针对S字符串进行逆序操作

    Split(识别符号,切割次数)方法进行切片(将字符串切片为列表格式)

 3、合并:将两个或多个字符串链接成一个字符串。

        三种方式,一种为’a’+’b’,用加号链接

          一种用操作符(%)---’%s %s %s’%(‘Python’,’hello’,’easy’)

 

         一种为join方法(将元组或列表连接成字符串格式)

 4、修改:在python中,字符串属于不可变类型,不能修改/删除源字符串的字符

        三种方式修改,第一种还是通过加号(+)

         第二种为切片再链接方式

         第三种方式为replace()函数修改字符串

         可表达一个字符串表达式中字符串的值,也可将字符串拆分成列表/元组/字典:eval()字符串转化成列表:

 将字符串拆分成列表:

 

4.2.4、字符串格式化

目的:对字符串的输出进行控制,使其按照所规定的格式输出。

分三种方法:符号格式化、函数格式化和字典格式化,下面基于这三种方法做详细介绍。

1、符号格式化:

  格式为”%+格式化符号”,主要存在如下几种

 

 

 2、函数格式化:

我们用Format函数对字符串做格式化操作,使用方法如下所示

  3、字典格式化:

4.3、列表类型

格式:变量名 = [元素1,元素2,元素3]

list类型中区分元素顺序,简言之可以通过检索进行检查,并且允许一个列表中包含重复的元素。列表是一个可修改数据项

初始化:list1 = list()或list1 = []

4.3.1、列表操作

1、索引:通过索引值得到对应列表中的元素,支持正向索引(正向索引开始值为0,反向索引末尾值为-1)与反向索引两种方式。

2、切片:切片可以在列表中截取所需元素,并返回一个截取后的列表。(左闭右开)

 3、连接符连接:

 4、列表修改/删除/添加/插入/扩展

修改:可通过索引值进行修改

 删除:通过‘del list1[索引]’ 来删除指定索引列表元素,单个元素删除用list1.pop(索引)或list1.remove(元素)删除

  添加:通过append添加,一次只能添加一个元素,且只能在列表的最后面

 

 插入:通过insert(插入位置索引数,插入元素)插入

  扩展:通过extend进行扩展,也就是批量增加功能

(此处和+添加的区别在于,extend在原有列表后做增加,+是生成了新id列表,其余效果一致)

4.3.2、列表函数

 

4.4、元组类型

格式:变量名 = (元素1,元素2,元素3)

元组类型中区分元素顺序,简言之可以通过检索进行检查,并且可以重复元素。当元组中只有一个元素时,简易在后面加一个逗号,避免识别错误。元组是一个不可修改数据项

初始化:tuple1 = tuple()或tuple1 = ()

4.4.1、元组操作

1、访问:支持索引和切片操作进行访问(索引或切片后的元组指向新ID)

2、修改:元组是不支持在原来地址中修改元素的,只能对元组进行连接操作,连接好的新元组与连接的两个元组之间ID不一致

 3、删除:元组中元素值是不允许删掉的,但可以用del语句删除整个元组,删除后元组不可再次引用。

4、统计:通过conut方法统计元组中某一个元素出现的频次

 5、查找:通过index方法查找元组中某一个元素出现的索引值

 

4.4.2、元组函数

 

4.5、字典类型

格式:变量名 = {key1:value1, key2:value2, key3:value3}

字典类型属于无序的数据类型,是通过键来寻找值。

其中字典的值是可变的,可以是列表,元组,字典等任意数据类型,但key必须用不可变类型。在一个字典中,键的值必须是唯一的

初始化:dict1 = dict()或dict1 = {}

4.5.1、字典操作

1、访问:字典属于无序的数据类型,没有根据顺序索引,其通过索引key值进行访问

2、修改:通过对key值索引进行value值修改

 3、删除:字典可以根据dict1.pop(key)来删除对应键值对,也可以通过del dict1 来删除整个字典

4.5.2、字典遍历

 

4.5.3、字典函数

 

4.6、集合类型

格式:变量名 = {元素1, 元素2, 元素3}

集合类型属于无序的数据类型,且不存在重复的元素。

初始化:set1 = set()或set1 ={}

4.6.1、集合操作

1、添加:集合属于无序的数据类型,通过set1.add()进行单个元素添加,通过set1.update(set2)进行多个元素添加

 2、删除:discard(元素)和remove(元素)删除集合中特定的元素(discard不报错,remove报错)

 

4.6.2、不可变集合

  使用frozenset()方法定义集合,可以把原本默认的可变集合更改为为不可变集合

4.5.3、集合函数

 

 简单汇总:

按照基本数据类型和复合数据类型分类:

基本数据类型:数字(int/float/complex/bool)、字符串(string)

复合数据类型:列表(list)、元组(tuple)、字典(dict)、集合(set)

按照可变数据类型和不可变数据类型分类:

不可变数据类型:数字(int/float/complex/bool)、字符串(string)、元组(tuple)

可变数据类型:列表(list)、字典(dict)、集合(set)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值