Python基础知识入门(三)

news2025/7/6 4:40:30

Python基础知识入门(一)

Python基础知识入门(二)


 一、元组类型

        元组是用英文小括号 () 把所有元素包裹起来,元组里面的每一个数据叫作元素。每个元素之间都要用 英文逗号 ( , ) 隔开。例如:(1,2,3)。

       注意:

       元组是不可变数据类型,不可以进行“增删改”操作,但可通过拼接、切片完成“增删改”操作。 


1.元组函数

序号

函数名

方法及描述

1

tuple(x)

将可迭代对象x转换为元组。

x = [1, 2, 3 ,4, 5],tuple(x),返回 (1, 2, 3, 4, 5)。

2

len(x)

计算元组x元素个数。

x = (1, 2, 3 ,4, 5),len(x),返回 5。

3

max(x)

返回元组x中元素最大值。

x = (1, 2, 3 ,4, 5) ,max(x) 返回 5。

4

min(x)

返回元组x中元素最小值。

x = (1, 2, 3 ,4, 5) ,min(x) 返回 1。

5

count(x)

返回元素x在元组出现次数

x = (1, 3, 3 ,3, 5),x.count(3),返回 3。 

6

index(x)

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

x = (1, 2, 3 ,3, 5),x.count(3),返回 2。   

7

zip(x,y)

将两个列表组合为元组,再用list函数转为列表。

x = [1,2,3],y = [4,5,6],list(zip(x,y)),返回 [(1, 4), (2, 5), (3, 6)]。

8

enumerate(x[,y])

将列表内容和序号组合为元组对象,再利用list函数转为列表。

x = ['A','B','C'],list(enumerate(x)),返回[(0, 'A'), (1, 'B'), (2, 'C')]
list(enumerate(x,1)),返回  [(1, 'A'), (2, 'B'), (3, 'C')]  y 为起始序号。


2.元组切片 

x = (1, 2, 3, 4, 5, 6)
print(x[2])             # 3                     查找元组下标为2的元素
print(x[-2])            # 5                     查找元组倒数第2个元素
print(x[:])             # (1, 2, 3, 4, 5, 6)    查找元组下标为0到末尾的元素
print(x[::2])           # (1, 3, 5)             查找元组下标0到末尾间隔为2的元素
print(x[:5])            # (1, 2, 3, 4, 5)       查找元组下标为0到5的元素
print(x[1:])            # (2, 3, 4, 5, 6)       查找元组下标为1到末尾的元素
print(x[1:-2])          # (2, 3, 4)             查找元组下标1的到倒数第2个间的元素
print(x[-5:-3])         # (2, 3)                查找元组倒数第5到倒数第3间的元素

3.元组运算

x = (1, 2, 3)
y = (4, 5, 6)

print(len(x))       # 3                     计算元组元素个数
print(x + y)        # (1, 2, 3, 4, 5, 6)    元组 x 和元组 y 拼接
print(x*2)          # (1, 2, 3, 1, 2, 3)    复制指定系数元组 x
print(5 in y)       # True                  判断 5 是否在元组 x 内
print(5 not in y )  # False                 判断 5 是否不在元组 x 内
print(x!=y)         # True                  判断元组 x 和 y 是否相等

二、字典类型

       字典是由大括号 {} 包裹所有元素。字典的每个元素是键值对,中间用英文冒号连接(:)如 {'name': '漫步桔田'},其中我们把 'name' 叫 键(key),' 漫步桔田' 值(value)。


1.字典函数

序号

函数名

方法及描述

1

diact(x)

创建一个字典。 序列x必须是元组。

x = (('漫漫',23),)
y = dict(x),返回 y =  {'漫漫': 23}。

2

len(x)

计算字典x元素个数,即键的总数。

x = {'name':'漫步桔田','age':21},len(x),返回 2 。

3

max(x)

返回字典中键的最大值。

x = {'a':1,'b':2,'c':3},max(x),返回 c。
y = {'101':1,'201':2,'301':3},max(y),返回 3。

4

min(x)

返回字典中键的最小值。

x = {'a':1,'b':2,'c':3},min(x),返回 a。
y = {'101':1,'201':2,'301':3},min(y),返回 101。

5

clear()

删除字典内所有元素。

x = {'name':'漫步桔田','age':21},x.clear(),返回 x = {}。

6

copy()

返回一个字典的浅复制。

x = {'name':'漫步桔田','age':21},y = x.copy(),

返回 y = {'name':'漫步桔田','age':21}。

7

fromkeys()

dict.fromkeys(seq[, value])
seq -- 字典键值列表。

value -- 可选参数, 设置键序列(seq)对应的值,默认为 None。
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值。

y = [1,2,3],dict.fromkeys(y),返回{1: None, 2: None, 3: None}
dict.fromkeys(y,6) ,返回 {1: 6, 2: 6, 3: 6}。

8

update()

把字典dict2的键/值对更新到dict里。

x = {'name':'漫步桔田','age':21}
y = {'results':100}
x.update(y) 返回 x =  {'name': '漫步桔田', 'age': 21, 'results': 100}。

9

get()

dict.get(key,default=None)
返回指定键的值,如果键不在字典中返回 default 设置的默认值。

x = {'name':'漫步桔田','age':21}

x.get('name')     返回  漫步桔田。
x.get(123)         返回 None。
x.get(123,456)  返回 456。

10

setdefault()

dict.setdefault(key,default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default。

x = {'name':'漫步桔田','age':21}  

x.setdefault('name')            返回  漫步桔田。
x.setdefault('results',100)   返回 100。
x  =  {'name': '漫步桔田',  'age': 21, 'results': 100}。

11

items()

返回一个视图对象。

x = {'name':'漫步桔田','age':21}

x.items() 返回  dict_items([('name', '漫步桔田'), ('age', 21)])。

12

keys()

返回一个视图对象。

x = {'name':'漫步桔田','age':21}

x.keys() 返回   dict_keys(['name', 'age'])。

13

values()

返回一个视图对象。

x = {'name':'漫步桔田','age':21}
x.values() 返回  dict_values(['漫步桔田', 21])。

14

pop()

删除字典 key(键)所对应的值,返回被删除的值。

x = {'name':'漫步桔田','age':21}
x.pop('name')
返回 x  =  {'age': 21}。

15

popitem()

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

x = {'name':'漫步桔田','age':21}
x.popitem()
返回 x  =  {'name': '漫步桔田'}。


 2.字典操作

# 字典创建
x = dict(name ='漫步桔田',age = 21)
print(x)               # {'name': '漫步桔田', 'age': 21} 

name = ['漫漫','桔桔']
age = [23,21]
x = dict(zip(name,age))
print(x)               # {'漫漫': 23, '桔桔': 21}

# 字典增加
x = {'name':'漫步桔田','age':21}
x['scores'] = 100
print(x)               # {'name': '漫步桔田', 'age': 21, 'scores': 100} 

# 字典删除
x = {'name':'漫步桔田','age':21}
del x['age']
print(x)               # {'name': '漫步桔田'} 

# 字典修改
x = {'name':'漫步桔田','age':21}
x['age'] = 25
print(x)               # {'name': '漫步桔田', 'age': 25} 

# 字典查询
x = {'name':'漫步桔田','age':21}
print(x['age'])        # 21 

# 字典嵌套
x = {}
x['name'] = [1,2,3]   
print(x)              # {'name': [1, 2, 3]}
print(x['name'][1])   # 2 嵌套取值  

# 字典判断
x = {'漫漫': 23, '桔桔': 21}  
print('漫漫' in x)     # True  判断字典键中是否包含'漫漫'
print('小漫' in x)     # False 判断字典键中是否包含'小漫'

三、集合类型

       集合是一个无序不重复的序列。使用大括号 { } 或者 set() 函数创建集合。例如:{1,2,3}。

       注意:

       创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。


1.集合函数

序号

函数名

方法及描述

1

set()

将序列转换为集合。

x = [1,2,3],set(x),返回 {1, 2, 3} 。
y = (4,5,6),set(y),返回 {4, 5, 6} 。

2

len()

计算集合中元素个数。

x = {1,2,3},len(x)),返回 3 。

3

max()

返回集合中最大值。

x = {1,2,3},max(x),返回 3 。
y = {'a','b','c'},max(x),返回 c 。

4

min()

返回集合中最小值。

x = {1,2,3},min(x),返回 1 。
y = {'a','b','c'},min(x),返回 a 。

5

add()

为集合添加新元素。

x = {1,2,3,4,5}
x.add(6)
返回 x = {1,2,3,4,5,6}。

6

union()

返回两个集合的并集。

x = {1,3,5}
y = {5,7}
x.union(y),返回 {1, 3, 5, 7}。

7

intersection()

返回集合的交集。

x = {1,3,5}
y = {2,3,4}
z = x.intersection(y),返回 z =  {3}。

8

update()

将集合 y 中元素过滤掉相同元素后添加到集合 x 中。

x = {1,3,5}
y = {5,7}
x.update(y),返回 x =  {1, 3, 5, 7}。

9

clear()

移除集合中的所有元素。

x = {1,2,3,4,5}
x.clear(),返回 x = set()。

10·

copy()

拷贝一个集合。

x = {1,2,3,4,5}
y = x.copy(),返回y = {1,2,3,4,5}。

11

pop()

随机移除元素。

x = {1,2,3,4,5}
x.pop(),返回 x = {2, 3, 4, 5}。

12

remove()

移除指定元素。

x = {1,2,3,4,5}
x.remove(4),返回 x = {1, 2, 3, 5}。

13

discard()

删除集合中指定的元素。

x = {1,3,5}
y = {2,3,4},x.discard(3),返回 x = {1, 5}。

14

difference_update()

删除x集合中与y集合中相同的元素。

x = {1,3,5}
y = {2,3,4}
x.difference_update(y),返回x = {1, 5}。

15

intersection_update()

删除集合 x 中与指定集合 y 中不同元素。

x = {1,3,5}
y = {2,3,4}
x.intersection_update(y),返回 x = {3}。

16

difference()

返回仅存在于集合 x 中而不存在于集合 y 中的元素。

x = {1,2,3}
y = {2,3,4}
z = x.difference(y),返回 z = 1。

17

symmetric_difference()

返回两个集合中不重复的元素集合。

x = {1,3,5}
y = {3,5,7}
z = x.symmetric_difference(y),返回 z  = {1, 7}。

18

symmetric_difference_update()

移除集合x、集合y中的相同元素,

并将集合y中不同元素插入到集合x中。

x = {3,5}
y = {5,7}
x.symmetric_difference_update(y),返回 x = {3, 7}。

19

isdisjoint()

判断集合x、y 是否包含相同的元素,

是返回 True,否则返回 False。

x = {1,3,5}
y = {2,3,4}
x.isdisjoint(y),返回 False。

20

issubset()

判断指定集合 x 是否为集合 y 的子集,

是返回 True,否则返回 False。

x = {1,3,5}
y = {1,3,5,7,9}
x.issubset(y),返回 True。

21

issuperset()

判断集合 y 是否包含指定集合 x,

是返回 True,否则返回 False。

x = {1,3,5}
y = {1,3,5,7,9},y.issuperset(x),返回 True。


2.集合操作

x = {1,2,3}
print(2 in x)         # True 判断元素 2 是否在集合 x 中

x = [1,1,2,3,5,5]
print(list(set(x)))   # [1, 2, 3, 5] 列表、元组去重

x = {1,3,5}
y = {2,3,4}

print(x-y)            # {1, 5}          
#差集:返回一个新集合,包括集合 x 中与集合y不同元素。

print(x|y)            # {1, 2, 3, 4, 5} 
#并集:返回一个新集合,包括集合 x 和集合 y 中所有元素。

print(x&y)            # {3}             
#交集:返回一个新集合,仅包括集合 x 和 y 中相同的元素。

print(x^y)            # {1, 2, 4, 5}    
#补集:返回一个新集合,仅包括集合 x 和 y 中的不同元素。



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/37195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Head First设计模式(阅读笔记)-04.工厂模式

披萨订购 假设要完成披萨订购的功能,披萨的种类很多,比如 GreekPizz、CheesePizz 等,披萨店会根据用户需要的披萨种类制作披萨,制作的流程包括prepare->bake->cut->box 简单实现 下面代码的实现十分简单清晰,…

从0到0.1学习 lambda表达式(Java版)

编码几年时间,有一个东西似乎一直也逃不过去,那就是lambda表达式。 无论是c#,Python还是Java,lambda的思想都是共通的。但以下的语法和实例为java。 现在就来说说这个看似很难的lambda表达式 什么是lambda表达式? l…

【owt-server】m88分支和m59-server

OWT 单独有个webrtc的仓库,里面有m88的分支Merged Upgrade sdk to m88 for webrtc node #1026 提交记录 主干merge Merge pull request #1026 from starwarfan/mst-88webrtc-m88 目录 构建修改

【信管2.2】项目管理知识体系与组织结构

项目管理知识体系与组织结构上一次课中,我们已经学过了项目以及项目管理的概念,这些内容帮我们认识到了项目到底是个什么东西,有什么特点,和运营有什么区别等等。今天我们就继续沿着项目这件事说下去,我们将一起探讨一…

【知识网络分析】共引网络(co-citation)

共引网络(co-citation) 1 读取本地文献构建共引网络数据集2 网络数据集精简3 社团群体划分4 节点中心度相关指标计算1 读取本地文献构建共引网络数据集 RC.networkCoCitation()方法中的参数与RC.networkCitation()方法中的参数功能一致。该案例中使用的数据集同样为2020-202…

SpringBoot框架保姆级笔记一看就会

文章目录 文章目录文章目录[toc]1️⃣ 简介一. 什么是 [IoC](https://so.csdn.net/so/search?qIoC&spm1001.2101.3001.7020) 容器?二. AOP面向切面编程三. SSM整合四. HttpServletRequest五. HttpServletResponse六. Cookie 与 Session七. Cookie八. Session九…

Java异常01:Error 和 Exception

什么是异常 # 实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的实际要求、你的程序要打开某个文件,这个文件可能不存在或者文件格式不对,你要读取数据库的数据,数据…

最全面的SpringMVC教程(一)——SpringMVC简介

前言 本文为SpringMVC相关教程,下边将对SpringMVC进行简单介绍,具体包含:对MVC架构的回顾,什么是SpringMVC,SpringMVC编程示例(包含配置版示例、注解版示例),初识SpringMVC&#xff…

NM DEV Mathematics for Java 【suanshu.net免费】

NM Dev是一个面向对象、高性能、经过广泛测试和专业记录的数学编程库,在S2上运行。自 2010 年开发以来,它是大量经过编码的数值算法,因此它们是可靠的面向对象、统一和可测试的。编程经验或数学知识很少的用户可以通过快速组合类轻松地为他或…

备战 2023 春招,P7 大咖手打 26 大后端面试专题神技,1500 题解析助力

年过后,不少人已经蓄势待发,信心满满地准备投递简历,到处面试,在不同的 Offer 之中择优而栖。 与此同时,也有人会悔恨自己这半年进步不大,每天噼里啪啦敲代码,但面对那些不能再熟悉的 Java 面试…

大数据毕设选题 - 生成对抗网络的照片上色动态算法设计与实现(深度学习 opencv python)

文章目录1 前言1 课题背景2 GAN(生成对抗网络)2.1 简介2.2 基本原理3 DeOldify 框架4 First Order Motion Model1 前言 🔥 Hi,大家好,这里是丹成学长的毕设系列文章! 🔥 对毕设有任何疑问都可以问学长哦! 这两年开始…

Linux项目后端部署及JDKTomcatMySQL安装

前言 上一篇文章简单的分享了在VMware上安装linux系统,本篇文章将要分享的内容是使用linux系统完成项目的部署 一、前置准备工作 在Windows系统中,我们要在开发环境下才能进行项目的开发。那么在linux系统中也是,在安装完linux系统后&#xf…

NoSuchMethodError的常见原因和通用解决方式

目录 环境信息 问题描述 错误分析 解决方法 常见原因 1.第三方包,作用域不对导致应用没导入该包 2.编译时和运行时使用的版本不一样 3.JDK版本不一样 4.多个同路径、同名的类 1.代码复制场景 2.代码移动场景 排查步骤 附录 Maven仲裁机制: …

为啥这么人选择iPhone

01.听音乐(10元/月) 歌曲很全 多个终端支持 果子自带的Music app 在那个设备都可以使用, 包括MacBook Pro,iPhone,iPad,iwatch等 02.周边配件方便购买 03.遇到问题好解决 04.使用稳定,不会有广告&#x…

MySQL海量数据优化(理论+实战) 吊打面试官

一、准备表数据 咱们建一张用户表,表中的字段有用户ID、用户名、地址、记录创建时间,如图所示 ​OK,接下来准备写一个存储过程插入一百万条数据 CREATE TABLE t_user (id int NOT NULL,user_name varchar(32) CHARACTER SET utf8 COLLATE ut…

[附源码]Python计算机毕业设计防疫物资捐赠系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,我…

Vue组件化编程开发

目录 一.模块 二.组件 &#xff08;快捷键< 回车 生成单组件模板&#xff09; 三.非单文件组件 四.单文件组件: 首先理解模块和组件的基本概念: 一.模块 1.理解:向外提供特定功能的js程序&#xff0c;一般就是一个js文件 2.为什么: js文件很多很复杂 3.作用:复用js, 简…

Mybatis-Plus+SpringBoot结合运用

目录 前言 一、创建Maven项目导入相关的依赖 二、在resources添加日志和连接数据库 1.日志文件(log4j.properties) 2.连接数据库&#xff08;application.properties&#xff09; 三、编写pojo &#xff08;注解编写get/set/tostring&#xff09; 四、UserMapper编写继承…

Fragment的生命周期

文章目录Fragment的生命周期Fragment的状态和回调运行状态暂停状态停止状态销毁状态回调方法附加的回调方法onAttach()onCreateView()onActivityCreated()onDestroyView()onDetach()Fragment完整的生命周期图Fragment的生命周期 和Activity一样,Fragment也有自己的生命周期,并…

c++实现图书管理系统v1.0

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录系统要求功能1.首页2.退出系统3.添加图书4.删除书籍5.查找书籍6.修改书籍信息7.显示所有图书8.查看书籍是否在书架上总代码收获系统要求 用c实现一个可以增删改查的…