首页 > 编程语言 >python基础知识整理

python基础知识整理

时间:2023-03-01 18:13:05浏览次数:38  
标签:python list 基础知识 字符串 program str 整理 列表 方法

一:pyhton数据类型

数字类型:整型(int)/ 浮点型(float)/ 布尔型(bool)/ 复数型(complex)

非数字类型:字符串(str)/ 列表(list)/ 元组(tuple) / 字典(dict)

不变类型:整型(int)/ 浮点型(float)/ 布尔型(bool)/ 复数型(complex)/ 字符串(str)/ 元组(tuple)

可变类型:列表(list)/ 字典(dict)

二:列表

 

序号

分类

方法

说明

实例

1

查询

list.index(obj)

从列表中找出某个值第一个匹配项的索引位置

program_list.index(“java”))

2

增加

list.insert(index, obj)

在列表中指定位置插入数据

program_list.insert(1, “kotlin”)

3

增加

list.append(obj)

在列表末尾追加数据

program_list.append(“C#”)

4

增加

list.extend(list1)

在列表1的数据追加到列表中

program_list.extend([“C#”, “kotlin”, “bash”])

5

增加

list.extend(list1)

在列表1的数据追加到列表中

program_list.extend([“C#”, “kotlin”, “bash”])

6

修改

list[index] = obj

修改指定索引的数据

program_list[2] = “Go”

7

删除

list.clear()

清空列表

program_list.clear()

8

删除

list.remove(obj)

删除第一个出现的指定数据

program_list.remove(“java”)

9

删除

list.pop()

删除末尾的数据

program_list.pop()

10

删除

list.pop(index)

删除指定索引的数据

program_list.pop(1)

11

统计

len(list)

计算列表长度

len(program_list)

12

统计

list.count(obj)

统计数据在列表中出现的次数

program_list.count(“java”)

13

排序

list.sort()

将列表升序排列

program_list.sort()

14

排序

list.sort(reverse=True)

将列表降序排列

program_list.sort(reverse = True)

15

翻转

list.reverse()

将列表翻转

program_list.reverse()

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

三:元组

 

元组(tuple)与列表类似,区别是元组的数据不能修改,元组的符号是小括号(),元组主要用于函数的参数和返回值,格式化字符串,以及保护列表数据,由于元组的数据无法修改,因此提供的方法也比较少

 

 

序号

分类

方法

说明

实例

1

查询

tuple.index(obj)

从元组中找出某个值第一个匹配项的索引位置

program_tuple.index(“java”)

2

统计

len(tuple)

计算元组长度

len(program_tuple)

3

统计

tuple.count(obj)

统计数据在列表中出现的次数

program_tuple.count(“python”)

 

 

 

 

 

 

 

 

四:字典

 

字典(dict)通常用于描述一个物体的相关信息,使用键值对存储数据,键必须唯一,由于要使用hash算法,只有不可变类型才能用作键,字典的符号是大括号{}

序号

分类

方法

说明

实例

1

取值

dict[key]

从字典中取出键对应的值

human_dic[“name”]

2

取值

dict.get(key)

从字典中取出键对应的值

human_dic.get(“name”)

3

取值

dict.items()

以列表返回可遍历的(键, 值) 元组数组

list(human_dic.items())

4

取值

dict.keys()

以列表返回一个字典所有的键

list(human_dic.keys())

5

取值

dict.values()

以列表返回字典中的所有值

list(human_dic.values())

6

增加/修改

dict[key] = value

key存在则更新value,否则增加键值对

human_dic[“gender”] = “male”

7

删除

dict.pop(key)

pop函数返回key对应的value值,并删除键值对

human_dic.pop(“gender”)

8

删除

dict.popitem()

返回并删除字典中的最后一对键和值

human_dic.popitem()

9

合并

dict.update(dic2)

合并字典dic2中的数据,已存在的key跟新value的值

human_dic.update({“weight”: 64, “age”: 27})

10

复制

dict.copy()

返回字典的浅复制

new_dic = human_dic.copy()

11

清空

dict.clear()

清空字典

human_dic.clear()

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

五:字符串

1)对字符串进行判断

序号

方法

说明

1

str.isalnum()

如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False

2

str.isalpha()

如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False

3

str.isdecimal()

如果 string 只包含数字则返回True,否则返回False

4

str.istitle()

如果 string 是标题化的(每个单词的首字母大写)则返回True

5

str.isupper()

如果 string 所有区分大小写的字符都是大写,则返回True

6

str.islower()

如果 string 所有区分大小写的字符都是小写,则返回True

7

str.isspace()

如果 string 中只包含空格,则返回 True,否则返回 False

 

 

 

 

 

 

 

 

 

 

 

 

 

2)对字符串进行修改

序号

分类

方法

说明

1

格式化

str.format()

格式化字符串

2

格式化

str.strip()

去掉字符串左右两边的空白字符

3

格式化

str.lstrip()

去掉字符串左边的空白字符

4

格式化

str.rstrip()

去掉字符串右边的空白字符

5

文本对齐

str.ljust(width)

返回一个原字符串左对齐,并使用空格填充宽度至长度width的新字符串

6

文本对齐

str.rjust(width)

返回一个原字符串右对齐,并使用空格填充宽度至长度width的新字符串

7

文本对齐

str.center(width)

返回一个原字符居中对齐,并使用空格填充宽度至长度width的新字符串

8

大小写

str.title()

把字符串的每个单词首字母大写

9

大小写

str.lower()

把字符串的所有大写字符转换成小写

10

大小写

str.upper()

把字符串的所有小写字符转换成大写

11

大小写

str.swapcase()

翻转字符串的大小写

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)字符串的查找和替换

序号

方法

说明

1

str.count(str1, beg=0, end=len(string))

返回 str1 在字符串中出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数

2

str.startswith(obj, beg=0,end=len(string))

检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查.

3

str.endswith(obj, beg=0, end=len(string))

检查字符串是否以 obj 结束,是则返回 True,否则返回 False。如果beg 或者 end 指定值,则在指定范围内检查

4

str.find(str1, beg=0, end=len(string))

检测 str1是否包含在字符串中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内。如果是则返回开始的索引值,否则返回-1

5

str.rfind(str1, beg=0,end=len(string) )

类似于find函数,不过是从右边开始查找

6

str.index(str1, beg=0, end=len(string))

跟find()方法一样,只不过如果str1不在 字符串中会报一个异常.

7

str.rindex(str1, beg=0, end=len(string))

类似于index函数,不过是从右边开始

8

str.replace(str1, str2, num=string.count(str1))

把 字符串中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4)字符串的拆分和连接

序号

方法

说明

1

str.split(str1="", num=str.count(str1))

以 str1 为分隔符切片字符串,如果 num 有指定值,则仅分隔 num+1 个子字符串

2

str.splitlines([keepends])

按照行(’\r’, ‘\r\n’, \n’)分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。

3

str.join(seq)

以 字符串作为分隔符,将 列表seq 中所有的元素(用字符串表示)合并为一个新的字符串

 

 

 

 

 

 

 

 

5)公共方法

内置函数

对于列表,元组,字典,字符串,python也提供了一些公共方法

函数

描述

说明

len(item)

计算元素的总个数

 

del(item)

删除变量

可以删除整个变量,加上索引可以只删除指定的元素

max(item)

返回元素的最大值

字典只针对key比较

min(item)

返回元素的最小值

字典只针对key比较

 

 

 

 

 

 

 

 

六:切片

切片使用索引值可以方便地截取容器中一定范围的数据,适用于列表,元组,字符串。

切片语法如下:

item[N:M:S]

其中N表示要截取的开始位置,M表示结束位置,S表示step也就是步长,默认是1,截取的时候[N:M]是个半闭合区间,等效于数学上[N,M)取值范围,取N不取M, N和M都可以省略。python中,-1可以表示最后一个元素,字符串利用切片完成翻转的代码如下

 

 

 

 七:函数

1)形参与实参

形参:定义函数的时候,括号里面的参数形参必须是变量

实参:调用函数的时候,括号里面的参数实参可以是常量

实参可以是变量实参可以是表达式

定义函数的时候,形参没有值,只是一个变量名

只要调用函数的时候,通过实参把值实时赋值给形参

2)函数的嵌套

 

 

 3)global关键字

当需要在函数内部修改全局变量的值,修改前需要用global修饰全局变量的名字

八:面向对象

1.类

类的三个要素

类名

属性

类中的变量---属性

方法

类中的函数---方法

2.对象

 

类中的方法不能直接调用,把类实例化为对象后,通过对象调用方法

 

实例 通过类创建的对象, 叫类的实例

 

实例化 创建对象的动作, 叫实例化

class cat: # 定义了一个类cat,这个类不能直接使用

def eat(self): # 第一个参数必须是self

print("猫吃饭")

def drink(self):

print("猫喝水")

c1 = cat() # 根据类cat, 创建了一个对象c1, 对象名类似于变量名

c1.eat() # 调用的时候,不需要提供self对应的实参

c1.drink() # 调用对象的方法

# 方法只能通过对象调用,不能通过类直接调用

# c1就是类cat的实例

# c1 = cat() 这个动作就叫实例化

c2 = cat() # 实例化, 实例化的结果是cat类有一个对象叫c2 # c2是类cat的实例

3.self函数

self可以在方法内部定义和使用属性

self可以在方法内部嵌套调用,其他方法在类的外部是不能使用self的

在类的外部调用方法     对象名.方法名

在类的外部使用属性     对象名.属性名

4.init方法

 __init__ 注意名字,前面两个下划线,后面两个下划线,当创建对象的时候,也就是实例化对象的时候,init自动调用

init方法的作用

定义类中的属性

同时通过init方法的参数为属性赋值

init方法一旦有形参,对象实例化的时候就必须提供实参

为了避免实例化的时候必须提供实参,init的形参总是有缺省值

 

 

 5.del方法

当对象在内存中销毁的时候,自动调用del方法

del方法只有一个参数self

如果对象是局部的,那么函数执行完毕,自动调用对象的del方法

如果对象是全局的,那么程序执行完毕,自动调用对象的del方法

6.封装

 

就是把类的属性和方法封装到类的内部,只能在内部使用,不能在类的外部使用

 

把属性和方法名前面加两个下划线 ,这个属性和方法就成为了类的私有属性和方法

 

7.继承

类A继承自类B,类A会拥有类B的所有属性和方法

class A:

  pass

class B(A): # B继承自类A

  pass

一个父类可以有多个子类继承,每个子类可以有自己特有的方法和属性

多级继承:类C继承自类B,类B继承自类A;类C就拥有了类B和类A的所有属性和方法

方法重写

父类的方法不能满足子类的需求方法重写有两种方式

覆盖父类方法     扩展父类方法

1)覆盖父类方法 :子类中出现和父类相同的方法,那么在子类中相同方法会把父类的方法覆盖

2)扩展父类方法:如果父类的方法不能完全满足子类需求, 子类可以在父类方法基础上增加功能

 

 说明:父类中所有的私有方法和私有属性归父类特有,子类不能继承

8.多态

 

不同的子类,调用相同的父类方法,产生不同的结果

 

多态的前提,不同的子类来自相同的一个父类,子类会覆盖父类的方法

 

 

 

标签:python,list,基础知识,字符串,program,str,整理,列表,方法
From: https://www.cnblogs.com/winnie-B612/p/17169216.html

相关文章

  • PyQt5弹框定时关闭(python)
    PyQt5使用QMessageBox,可以设置在几秒后关闭 (作者使用的python3)info_box=QMessageBox()#因为没使用这种方式QMessageBox.information(self,'复制','复制成功',QMe......
  • 部署堡垒机4——CentOS7 编译安装 Python 3.8.12
    1、去python3的官方网站下载源代码https://www.python.org/downloads/下载安装Python3.8.12到/opt/python3cd/optwgethttps://www.python.org/ftp/python/3.8.12/Py......
  • [oeasy]python0097_苹果诞生_史蒂夫_乔布斯_沃兹尼亚克_apple_I
    苹果诞生回忆上次内容上次时代华纳公司凭借手中的影视ip和资本吞并了雅达利公司此时雅达利公司曾经开发过pong的优秀员工乔布斯还在印度禅修寻找自......
  • Python识别图形验证码实战项目
    一、前言前几天有人问我的框架在登录时支不支持用户名、密码以及验证码。我回答是不支持,因为验证码是为了防爬虫的,自动化遇到有验证码可以叫开发去掉或者写个万能验证......
  • 如何确定我的 python shell 是以 32 位还是 64 位执行的?
    如何从shell内部判断shell处于什么模式?我试过查看平台模块,但它似乎只是告诉你“用于可执行文件的位架构和链接格式”。我的二进制文件被编译为64位(我在OSX10......
  • Python教程:类的继承,什么是继承
    一、什么是继承继承是一种新建类的方式,新建的类称为子类,被继承的类称为父类继承的特性是:子类会遗传父类的属性继承是类与类之间的关系二、为什么用继承使用继承可以......
  • Python数据分析之财政收入影响因素分析及预测模型
     01-summary.py 1#-*-coding:utf-8-*-23#代码6-145importnumpyasnp6importpandasaspd78inputfile='../data/data.csv'#输......
  • Python教程:类的派生
    一、派生派生:子类中新定义的属性的这个过程叫做派生,并且需要记住子类在使用派生的属性时始终以自己的为准1派生方法一(类调用)指名道姓访问某一个类的函数:该方式与继承......
  • CentOS 7上使用Python 3和虚拟环境
    在CentOS7上使用Python3和虚拟环境,请按照以下步骤操作:首先,确保您的系统已安装Python3。您可以使用以下命令检查Python3是否已安装:python3--version如果Python3已......
  • 算法刷题-表达式求值-PYTHON
    0x00引言为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。题解只写自己理解的解法,其他解法不再增加。......