Python-基础篇-数据结构-列表、元组、字典、集合

文章目录

  • 思维导图
  • ❓ 大抵是何物
    • 数据结构
    • 切片
  • 💬具体是何物
    • 列表💻 list💻 [ ]
      • 自我介绍
      • 精神面貌
      • 使用说明
      • 生理体征
      • 方法汇总
    • 元组💻 tuple💻 ( )
      • 自我介绍
      • 使用说明
      • 精神面貌
      • 生理体征
    • 字典💻 dict💻 { }
      • 自我介绍1
      • 自我介绍2
      • 精神面貌
      • 使用说明
      • 生理体征
    • 集合💻 set💻 { }
      • 精神面貌
      • 生理体征
  • ✒️技巧
  • 🆎专业英语学习角

思维导图

列表、元组
在这里插入图片描述
字典、集合
在这里插入图片描述

❓ 大抵是何物

数据结构

💬正如在现实世界中一样,直到我们拥有足够多的东西,才迫切需要一个储存东西的容器,这也是我坚持把数据结构放在最后面的原因一一直到你掌握足够多的技能,可以创造更多的数据,你才会重视数据结构的作用。这些储存大量数据的容器,在Python称之为内置数据结构(Built-in Data Structure)。
我们日常使用的网站、移动应用,甚至是手机短信都依赖于数据结构来进行存储,其中的数据以一种特定的形式储存在数据结构中,在用户需要的时候被拿出来展现。
Python有四种数据结构,分别是:列表、字典、元组,集合。每种数据结构都有自己的特点,并且都有着独到的用处。

切片

切片操作是访问序列中元素的另一种方法,它可以访问一定范围内的元素。通过切片操作可以生成一个新的序列。实现切片操作的语法格式如下:

sname[start:end:step]
  • sname:表示序列的名称。
  • start:表示切片的开始位置(包括该位置),如果不指定,则默认为0。
  • end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
  • step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。

💬具体是何物

Python有四种数据结构,分别是:列表、字典、元组,集合。每种数据结构都有自己的特点,并且都有着独到的用处。

列表💻 list💻 [ ]

自我介绍

列表是另一种序列对象的形式,因此它继承了许多字符串的操作参数。字符串只是字符的列表,但与字符串不同的是,Python列表可包含任何对象列表。可在列表中存储数字、字符串、其他列表、字典和自己创建的任何其他对象类型。因为它是对象列表,并且所有Python 数据都存储为对象。所以列表可以是所选信息的任意组合。
Python存储对象列表(或者指向对象的名字),而不存储字符串或数字的列表。当需要信息列表但又不想仅限于存储信息的类型时,就可使用Python提供的列表。有关 Python如何存储对象的其他信息,请参阅“对象”部分。

精神面貌

列表的特征总结如下:

  1. 列表中的每一个元素都是可变的;
  2. 列表中的元素是有序的,也就是说每一个元素都有一个位置;
  3. 列表可以容纳Python 中的任何对象。

使用说明

使用列表
Python 中通过用方括号把一系列对象或常量封装起来从而创建列表,如下列语句:

list =[1,2,3,4]
songs=[I should be allowed to think', 'Birdhouse in your Soul']

使用方括号后会自动暗示方括号中的对象为列表。Perl用户注意到:在 tuple中用圆括号代替方括号,本章稍后将讲述。也可用下面的方式嵌套列表,实际上该列表包含两个列表:

hex =[ [ 0.1,2,3,4,5,6,7,8,9],['A","B,"C,D,"E',F]]

类似于字符串,可根据表项的索引引用列表。索引从0开始。采用前面的示例,第一首歌曲的歌名可从下式得到:

print songs[0]

要访问完整的嵌套列表,需指定列表对象的索引:

print Numbers: ' , hex[0]

要访问嵌套列表的指定对象,用下列方法:

print 'D:" , hex[1][3]

问理,相同的分片操作:

print 'A-C", hex[1][0:3]

要得到列表长度,用len函数:

print len(hex)

也可用运算符“+”连接列表,其工作方式同字符串和数字对象:

hex[1]+ list
['A','B','C','D','E','F',0,1,2,3 ]

另外,可以用增加赋值符号向列表中添加表项,但必须指定待添加的列表对象。如下例所示:

>>> songs+=[AKA Driver’]

最后,还可用数字对象与列表相乘,在列表内重复某元素:

>>> list* 2
[0.1,2,3,0,1,2,3]

注意不能用列表与列表相乘,这样做没有意义。
但可创建基于简单表达式的新列表。例如,给定列表:

>>> list =[1.2,3,4]
要得到每个元素的立方值的列表,可使用函数 map(9章讲述)与匿名lambda函数(4章讲述)的组合:
>>> cubes = map( lambda(x): x**3, list)
在Python 2.0中,只需重写以上语句,得到下列语句:
>>> cubes =[x*3 for x in list]

生理体征

对于数据的操作,最常见的是增删改查这四类。但是,有些可以四个都会,有些只会几个,而列表,四个都会。💭【联想法:列表,列个表格,进行数据操作,办公的时候,列出excel表,增删改查都阔以的哟】

当然,要做四个动作,得先知道列表长得怎么样,换成身体宫殿,是增加手臂,还是砍掉xx,那列表要砍掉些啥子,得知道它长得啥样。
在这里插入图片描述

(1)同其他类型的 Python变量一样,创建列表时,也可以使用赋值运算符“=”直接将一个列表赋值给变量,语法格式如下:

listname = [element 1,element 2,element 3...,element n]

(2)创建空列表
在Python中,也可以创建空列表,例如,要创建一个名称为emptylist的空列表,可以使用下面的代码:

emptylist=0

(3)创建数值列表
在 Python中,可以使用list()函数直接将range()函数循环出来的结果转换为列表。
list()函数的基本语法如下:

list(data)

其中,data表示可以转换为列表的数据,其类型可以是range对象、字符串、
元组或者其他可迭代类型的数据。

(4)添加列表元素
语法格式如下:

listname.append(obj)

上面介绍的是向列表中添加一个元素,如果想要将一个列表中的全部元素添加到另一个列表中,可以使用列表对象的extend()方法实现。extend()方法的语法如下:

listname.extend(seq)

其中,listname为要添加元素的列表名称,obj为要添加到列表末尾的对象。seq为要添加的列表。语句执行后,seq的内容将追加到listname 的后面。

删除列表
对于已经创建的列表,不再使用时,可以使用del语句将其删除。语法格式如下:

Del listname

其中,listname为要删除列表的名称。

对列表进行统计和计算
(1)获取指定元素出现的次数
使用列表对象的count()方法可以获取指定元素在列表中的出现次数。基本语法格式如下:

listname.count(obj)

(2)获取指定元素首次出现的下标
使用列表对象的index()方法可以获取指定元素在列表中首次出现的位置(即索引)。基本语法格式如下:

listname.index(obj)

参数说明:

  • listname:表示列表的名称。
  • obj:表示要判断是否存在的对象,这里只能进行精确匹配,即不能是元
    素值的一部分。

(3)统计数值列表的元素和
在Python中,提供了sum()函数用于统计数值列表中各元素的和。语法格式如下:

sum(iterable[,start])

参数说明:

  • iterable:表示要统计的列表。
  • start:表示统计结果是从哪个数开始(即将统计结果加上 start 所指定的
    数),是可选参数,如果没有指定,默认值为0。

对列表进行排序
(1)使用列表对象的sort()方法
列表对象提供了sort()方法用于对原列表中的元素进行排序。排序后原列表中的元素顺序将发生改变。列表对象的sort()方法的语法格式如下:

listname.sort(key=None,reverse=False)

参数说明:

  • listname:表示要进行排序的列表。
  • key:表示指定从每个元素中提取一个用于比较的键(例如,设置
    “key=str.lower”表示在排序时不区分字母大小写)。
  • reverse:可选参数,如果将其值指定为True,则表示降序排列;如果为False,则表示升序排列,默认为升序排列。
    (2)使用内置的sorted()函数实现
    在 Python 中,提供了一个内置的 sorted()函数,用于对列表进行排序。使用该函数进行排序后,原列表的元素顺序不变。storted()函数的语法格式如下:
sorted(iterable,key=None,reverse=False)

参数说明:

  • iterable:表示要进行排序的列表名称。
  • key:表示指定从每个元素中提取一个用于比较的键(例如,设置
    “key=str.lower”表示在排序时不区分字母大小写)。
  • reverse:可选参数,如果将其值指定为True,则表示降序排列;如果为
    False,则表示升序排列,默认为升序排列。

方法汇总

在这里插入图片描述

list = [1,2,3]
more=[11,12,13]
list.append (4)  #[1,2,3.4]
list.append (('5a', '5b'))   #[1,2,3,4, (5a, 5b) ]
list.extend (more)   #[1,2,3,4, ('5a', '5b'), 11,12,13]
list.index (11)   #返问5
list.insert (5,'Six')   #[1,2,3,('5a','5b'),'Six',11,12,13]
list.pop()   #返问(并移去)13
list.pop(4)    #返回tuple('5a','5b')
list.remove('Six')   #[1,2.3.11,12]
list.reverse()  #[12,11,3,2,1]
list.sort()     #[1,2,3,11、12]

虽然None适用于任何对象,但是,在前面大家还没遇到值None。实际上 None意味着无——它并不代表空列表或长度为0的字符p,而是没自他的对象。None很重要,因为它可用米标识无值对象。类似C中的NULL值利 Perl中的undef。

元组💻 tuple💻 ( )

自我介绍

使用说明

精神面貌

元组其实可以理解成一个稳固版的列表,因为元组是不可修改的,因此在列表中的存在的方法均不可以使用在元组上,但是元组是可以被查看索引的,方式就和列表一样:

在这里插入图片描述

生理体征

(1)使用赋值运算符直接创建元组
同其他类型的Python变量一样,创建元组时,也可以使用赋值运算符“=”直接将一个元组赋值给变量。语法格式如下:

tuplename = (element 1,element 2,element 3,....element n)

其中,tuplename表示元组的名称,可以是任何符合Python命名规则的标识符;elemnet 1.elemnet 2.elemnet 3.elemnet n表示元组中的元素,个数没有限制。
(2)创建数值元组
在 Python中,可以使用tuple()函数直接将range()函数循环出来的结果转换为数值元组。tuple()函数的基本语法如下:

tuple(data)

其中,data表示可以转换为元组的数据,其类型可以是range对象、字符串、元组或者其他可迭代类型的数据。

删除元组
对于已经创建的元组,不再使用时,可以使用del语句将其删除。语法格式如下:

del tuplename

其中,tuplename为要删除元组的名称。

哈哈🔈🔈🔈,你忘了吧,我是改不了的。
元组🔈远祖,远祖是过去的,是历史,不可以被改变的,skr💋💋

字典💻 dict💻 { }

自我介绍1

编程世界中其实有很多概念都基于现实生活的原型,字典这种数据结构的特征也正如现实世界中的字典一样,使用名称-内容进行数据的构建,在 Python中分别对应着键(key)一值(value),习惯上称之为键值对。
在这里插入图片描述
上述图就很直观,其实字典,也类似书本的目录和内容,目录是key,内容是value。

自我介绍2

在这里插入图片描述

精神面貌

字典的特征总结如下:

  1. 字典中数据必须是以键值对的形式出现的;
  2. 逻辑上讲,键是不能重复的,而值可以重复;
  3. 字典中的键(key)是不可变的,也就是无法修改的;而值(value)是可变的,可修改的,可以是任何对象。

使用说明

字典和列表看上去很相似,但实际上它们区别很大。字典没有顺序。和列表相似,索引(键)必须惟一,但字典的键没有逻辑顺序。意即字典不是序列。不能用访问字符串、列表或tuple中条目一样的方法去访问字典的条目。这带来了一个坏处:当分别两次访问相同字典时,由字典返回信息的顺序并不是一致的。

但字典对象提供两个方法keys和 values,用来返问字典中定义的所有键和值的列表。例如,要返回前面示例中月份字典的月份列表,使用以下语句:
months = monthdays.keys( )
现在months对象是一个月份字符串的列表,这些月份字符串构成了字典monthdays的键。函数len返回存储于字典中的元素,键/值对的数目。语句:
len (inonthdays)
返回的止确值为12。

生理体征

对于数据的操作,最常见的是增删改查这四类。但是,有些可以四个都会,有些只会几个,而字典,四个都会。

字典的创建和删除
定义字典时,每个元素都包含两个部分“键”和“值”,并且在“键”和“值”之间使用冒号分隔,相邻两个元素使用逗号分隔,所有元素放在一个大括号“0”中。语法格式如下:

dictionary ={'key1':'value1', 'key2":'value2', ..., 'keyn':'valuen', }

参数说明:

  • dictionary:表示字典名称;
  • key1.key2…keyn:表示元素的键,必须是唯一的,并且不可变,例如可
    以是字符串、数字或者元组;
  • value1. value2…valuen:表示元素的值,可以是任何数据类型,不是必须
    唯一。

遍历字典
使用字典对象的items()方法可以获取字典的“键-值对”列表。其语法格式如下:

dictionary.items()

其中,dictionary为字典对象;返回值为可遍历的(键-值对)的元组列表。想要获取到具体的“键-值对”,可以通过for循环遍历该元组列表。

集合💻 set💻 { }

精神面貌

集合则更接近数学上集合的概念。每一个集合中的元素是无序的、不重复的任意对象,我们可以通过集合去判断数据的从属关系,有时还可以通过集合把数据结构中重复的元素减掉。
在这里插入图片描述

生理体征

对于数据的操作,最常见的是增删改查这四类。但是,有些可以四个都会,有些只会几个,而集合,只会三个。
集合不能被切片也不能被索引,除了做集合运算之外,集合元素可以被添加还有删除︰

a_set = {1,2,3,4}
a_set.add(5)
a_set.discard(5)

集合的创建
(1)直接使用“{ }”创建集合
setname = {element 1,element 2,element 3,…element n}
参数说明:

  • setname:表示集合的名称,可以是任何符合 Python命名规则的标识符。elemnet 1,elemnet 2,elemnet 3,…elemnet n:表示集合中的元素,个数没有限制。

(2)使用set()函数创建
在Python中,可以使用set()函数将列表、元组等其他可迭代对象转换为集合。
set(函数的语法格式如下:
setname = set(iteration)
参数说明:

  • setname:表示集合名称。
    iteration:表示要转换为集合的可迭代对象,可以是列表、元组、range对象等,也可以是字符串。如果是字符串,返回的集合将是包含全部不重复字符的集合。

集合的添加
(1)向集合中添加元素
向集合中添加元素可以使用add()方法实现,
语法格式如下:setname.add(element)
参数说明:

  • setname:表示要添加元素的集合。
  • element:表示要添加的元素内容,只能使用字符串、数字及布尔类型的True或者False等,不能使用列表、元组等可迭代对象。

从集合中删除元素
在Python 中,可以使用del命令删除整个集合,也可以使用集合的pop( )方法或者remove( )方法删除一个元素,或者使用集合对象的clear()方法清空集合,即删除集合中的全部元素,使其变为空集合。

mr.remove('零基础学Python')   #移除指定元素
print('使用remove()方法移除指定元素后: ',mr)
mr.pop()  #删除一个元素
print('使用pop()方法移除一个元素后: ',mr)
mr.clear()  #清空集合
print('使用clear()方法清空集合后: ',mr)

✒️技巧

📌
📌
📌

🆎专业英语学习角

搜索

sorted
含义:分类,整理;挑选;把…归类;排序的
记忆:
热度:⭐️

reversed
词义:推翻;(使)反转;(使)颠倒;(使)翻转;颠倒的
记忆:谐音:若我死。
热度:⭐️

enumerate
含义:列举,枚举,数
记忆:词根词缀:e-,向外。number,数字,数数。
热度:⭐️

import
含义:输入;进口;重要性;意义
记忆:im(向内的)+port(港口)=import(进口)
热度:⭐️⭐️

append
含义:附加;添加;贴上
记忆:词源词缀:前缀ap-同ad-.词根pend,悬挂,见pendulum,钟摆。ap-来,临近±pend-悬挂,垂→依附
热度:⭐️⭐️

extend
含义:延伸;扩大;推广;延长;伸展;给予;发出;伸出;增加
记忆:词源词缀:ex(出)+tend(伸展)=extend(向外延生)
热度:★★

price
含义:价格
记忆:词源词根:可以追溯到它的词根“pris”,表示“价格、价值”的意思。
热度:⭐️

sale
含义:拍卖;卖,出卖;销售额,销售;销路
记忆:词源词根:来源于史前日耳曼语saljan。=【同源词】sell词组/短语on sale出售;折价出售来自sell的名词形式,比较tale,tell。sale这个词的词根是“sal”,来源于拉丁语中的“salire”,意思是“跳跃、卖出”。后来,“salire”经过演变,成为了现代英语中的“sale”。
热度:⭐️

set
含义:设置;放置,安置;集合;一套,一副
记忆:词源词根:【同源词】sect动词set的原始意义是“坐的原因cause to sit”,来源于史前日耳曼语setjan或sitjan(英语sit的词源)。
热度:⭐️⭐️⭐️⭐️⭐️

del
含义:微分算子,倒三角形
记忆:
热度:⭐️⭐️

remove
含义:去除;开除;脱掉,拿下
记忆:词根词缀:re一再,move移动。
热度:⭐️⭐️

dictionary
含义:字典
热度:⭐️

value
词义:值
热度:⭐️

dict
含义:字典
热度:⭐️

zip
含义:拉链
热度:⭐️⭐️

tuple
含义:元组
热度:⭐️⭐️

list
含义:列表
热度:⭐️⭐️

clear
含义:清除
热度:⭐️

default
含义:系统默认值
热度:⭐️

iteration
含义:迭代
热度:⭐️

在这里插入图片描述

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

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

相关文章

【C++】vector容器接口要点的补充

接口缩容 在VS编译器的模式下&#xff0c;类似于erase和insert接口的函数通常会进行缩容&#xff0c;因此&#xff0c;insert和erase行参中的迭代器可能会失效。下图中以erase为例&#xff1a; 代码如下&#xff1a; #include <iostream> #include <vector> #inclu…

Python——条形图正负不同色加表格

条形图&#xff0c;当差值大于0时设置一个颜色&#xff0c;反之另一种颜色&#xff0c;并添加表格 import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib.ticker as mtick import matplotlib.ticker as ticker#设置输出结果对齐方式 pd…

Qt 5.15.2 (MSVC 2019)编译 QWT 6.2.0 : 编译MingW或MSVC遇到的坑

MingW下编译QWt 6.2.0 下载qwt最新版本&#xff0c;用git工具 git clone下载源码 git clone https://git.code.sf.net/p/qwt/git qwt-git 或者使用我下载的 qwt 2.6.0 链接&#xff1a;https://pan.baidu.com/s/1KZI-L10N90TJobeqqPYBqw?pwdpq1o 提取码&#xff1a;pq1o 下载…

python-基础篇-高级变量类型

文章目录 高级变量类型目标知识点回顾 01. 列表1.1 列表的定义1.2 列表常用操作del 关键字&#xff08;科普&#xff09;关键字、函数和方法&#xff08;科普&#xff09; 1.3 循环遍历1.4 **应用场景** 02. 元组2.1 元组的定义创建空元组元组中 **只包含一个元素** 时&#xf…

教您如何下载保存钉钉视频到电脑本地

教您如何下载保存钉钉视频到电脑和手机相册地瓜网络技术 大家好&#xff0c;我们这边是地瓜网络技术&#xff01;30秒教会你下载钉钉视频&#xff01;现在很多群管理员把视频设置为禁止下载&#xff0c;导致我们无法正常的下载群直播回放视频&#xff0c; 今天我们就教大家如何…

AWS 专题学习 P7 (FSx、SQS、SNS)

文章目录 Amazon FSx – 概述Amazon FSx for LustreFSx Lustre - 文件系统部署选项 Amazon FSx for NetApp ONTAPAmazon FSx for OpenZFSHybrid Cloud 存储AWS 存储云原生选项AWS 存储网关Amazon S3 File GatewayAmazon FSx File GatewayVolume GatewayTape GatewayStorage Gat…

【LeetCode】141. 环形链表

leetcode题目链接 141. 环形链表 #include <stdio.h> #include <stdbool.h>struct ListNode {int val;struct ListNode* next; }; typedef struct ListNode ListNode;bool hasCycle(ListNode* head) {ListNode* slow head, * fast head;while (fast &&…

微信小程序 image bindload 事件不触发,图片加载不出来

问题&#xff1a; 当小程序图片页面反复跳转时&#xff0c;或者微信打开小程序页面之后&#xff0c;处于后台运行。 图片加载不出来&#xff0c;我图片加载是通过bindload事件不判断是否下载完成再显示。但是现在bindload不触发&#xff0c;一直显示加载层。 分析&#xff1…

鸿蒙 HarmonyOS ArkTS ArkUI 动画 中心扩展、向下扩展、纵向扩展

EntryComponentstruct Index {State widthA: number 0State heightA: number 0onPageShow():void{animateTo ( {duration: 2000,iterations: -1,curve:Curve.Linear}, () > {this.widthA 200this.heightA 200} )}build() {Column() {// 中心扩展Column(){}.width(this.wi…

什么是中间件?

文章目录 为什么需要中间件&#xff1f;中间件生态漫谈数据库中间件读写分离分库分表引进数据库中间件MyCat 服务端代理模式ShardingJDBC 客户端代理模式 总结 IT 系统从单体应用逐渐向分布式架构演变&#xff0c;高并发、高可用、高性能、分布式等话题变得异常火热&#xff0c…

【Arduino】无法上传程序到开发板,报错 avrdude: ser_open(): can‘t set com-state for “\\.\COM6“

问题描述 在尝试将项目上传到Arduino板子时&#xff0c;尽管开发板已被正确连接&#xff0c;并且IDE中能够正常读取到开发板信息&#xff0c;但是上传过程中仍然出现了问题。 下面是IDE中显示的开发板信息&#xff1a; 当尝试上传程序时&#xff0c;控制台报错信息如下&#…

APP测试基本流程以及APP测试要点梳理,保证您看了不后悔!

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

拓展边界:前端世界的跨域挑战

目录 什么是跨域 概念 同源策略及限制内容 常见跨域场景 如何解决跨域 CORS Nginx代理跨域 Node中间件代理跨域 WebSocket postMessage JSONP 其他 什么是跨域 概念 在此之前&#xff0c;我们了解一下一个域名地址的组成&#xff1a; 跨域指的是在网络安全中&…

项目实战————苍穹外卖(DAY11)

苍穹外卖-day11 课程内容 Apache ECharts 营业额统计 用户统计 订单统计 销量排名Top10 功能实现&#xff1a;数据统计 数据统计效果图&#xff1a; 1. Apache ECharts 1.1 介绍 Apache ECharts 是一款基于 Javascript 的数据可视化图表库&#xff0c;提供直观&#x…

基于SpringBoot Vue养老院管理

大家好✌&#xff01;我是Dwzun。很高兴你能来阅读我&#xff0c;我会陆续更新Java后端、前端、数据库、项目案例等相关知识点总结&#xff0c;还为大家分享优质的实战项目&#xff0c;本人在Java项目开发领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#x…

Gradle——基础

1、Gradle基础 1.1、Ant/Maven/Gradle对比 无论那种项目构建工具&#xff0c;都有自身的优势和劣势&#xff0c;所以选择一款最适合项目的就是最好的&#xff01; 1.2、Gradle项目目录结构 Gradle项目默认目录结构和Maven项目的目录结构一致&#xff0c;都是基于约定大于配置…

各种Linux版本安装Docker

文章目录 一、Ubuntu 20.04.61. 网卡和DNS配置2. Docker安装 二、CentOS Linux 7.91. 网卡和DNS配置2. Docker安装 三、Alibaba Cloud Linux 31. DNS配置2. repo说明3. Docker安装 四、验证是否安装成功 一、Ubuntu 20.04.6 1. 网卡和DNS配置 /etc/netplan 找到 *.yaml 文件 …

第十一站:C++面向对象-多态

为什么要使用多态 当定义的子类继承父类并重写父类的方法后, 父类使用指针调用子类的同名方法,得到的却是父类同名方法的结果 #include <iostream> using namespace std; class Father { public:void play() {cout << "一起去KTV唱歌吧" << end…

主板电路学习; 华硕ASUS A43S笔记本安装win7X64(ventoy)

记录 老爷机 白色 华硕 A43S 笔记本 安装 win7X64 1. MBR样式常规安装win7X64Sp1 (华硕 A43S 安装 win7X64 ) 老爷机 白色 华硕 A43S 笔记本 安装 win7X64 &#xff08;常规安装&#xff09; 设置&#xff1a; 禁用UEFI 启用AHCI ventoy制作MBR&#xff08;非UEFI&#xff…

OpenAI的DALL·e2生成的AI图像有时会带有偏见或NSFW

专家警告说&#xff0c;OpenAI的图像生成模型DALLe2可能玩起来很有趣&#xff0c;但它生成的图片可能会带有刻板印象和偏见&#xff0c;甚至是生成NSFW图片&#xff0c;因此在现实世界中部署会有风险。 OpenAI公司承认“如果没有足够的防护措施&#xff0c;像DALLe2这样的模型…