鱼C论坛

 找回密码
 立即注册
查看: 934|回复: 11

[已解决]关于字典清除指令clear

[复制链接]
发表于 2020-6-14 14:33:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
当对定义的字典a使用clear指令的时候,输出字典a会出现set()。这是因为Python版本不同进行的更新吗?
a = {'小甲鱼','fishc'}
a.clear()
print(a)
set()
最佳答案
2020-6-14 14:38:46
本帖最后由 BIO-张磊 于 2020-6-14 14:40 编辑

首先,你这种定义方法不是字典,而是集合set
你应该这么定义字典 a = {}或者a =dict()
定义列表 a = []或者a = list()
定义元组 a = ()或者a = tuple()
定义集合 a = set()或者a = {x,x,x}
你可以使用type函数查看这些a都是什么
type(a)
其次你可以直接输入a看看返回的是什么
字典返回[],集合返回set(),元组返回(),字典返回{}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-14 14:38:46 | 显示全部楼层    本楼为最佳答案   
本帖最后由 BIO-张磊 于 2020-6-14 14:40 编辑

首先,你这种定义方法不是字典,而是集合set
你应该这么定义字典 a = {}或者a =dict()
定义列表 a = []或者a = list()
定义元组 a = ()或者a = tuple()
定义集合 a = set()或者a = {x,x,x}
你可以使用type函数查看这些a都是什么
type(a)
其次你可以直接输入a看看返回的是什么
字典返回[],集合返回set(),元组返回(),字典返回{}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 14:43:08 | 显示全部楼层
本帖最后由 BIO-张磊 于 2020-6-14 14:46 编辑

让你觉得{x,x,x}是字典的原因,只是因为python创建了字典这种数据形式,借用了{}这个外套
但实际上{}这个就是集合的标志,高中数学里面,我们表示一个元素的范围就是用{}来括起来的
满意请采纳噢,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-14 14:58:17 | 显示全部楼层
BIO-张磊 发表于 2020-6-14 14:38
首先,你这种定义方法不是字典,而是集合set
你应该这么定义字典 a = {}或者a =dict()
定义列表 a = []或 ...

a = dict('小甲鱼‘)这个语句是错误的,返回的提示是:SyntaxError: invalid character in identifier
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 15:04:44 | 显示全部楼层
本帖最后由 BIO-张磊 于 2020-6-14 15:36 编辑
hxbstudy 发表于 2020-6-14 14:58
a = dict('小甲鱼‘)这个语句是错误的,返回的提示是:SyntaxError: invalid character in identifier


你对字典创建的多种方法还是不熟悉。
我给你列举的是创建空字典,空列表,空元组,空集合的方法
如果说在创建字典或者列表或者元组或者集合时,要有元素需要这么设定
字典
a = {"t1":1,"t2":2}或者a = dict(t1 = 1, t2 = 2)
列表
a = list(1,2,3)或者a = [1,2,3],不是list(1,2,3)是list(可迭代对象),原来的因为思维定式和用的少,产生了错误,被指出
元组
a = tuple(1,2,3)或者 a = (1,2,3)或者a = 1,2,3,不是tuple(1,2,3)是tuple(可迭代对对象)
集合
a = {"t1","t2"}或者a = set(可迭代对象)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 15:22:15 | 显示全部楼层
BIO-张磊 发表于 2020-6-14 15:04
你对字典创建的多种方法还是不熟悉。
我给你列举的是创建空字典,空列表,空元组,空集合的方法
如果说 ...

明明是你自己打成中文符号……
而且你给出的方法本身就是错的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 15:23:11 | 显示全部楼层
只有当大括号里面是键值对时才是字典!比如 {1:2}
其他情况下则是集合,比如 {1,2}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 15:24:25 | 显示全部楼层
本帖最后由 BIO-张磊 于 2020-6-14 15:31 编辑
永恒的蓝色梦想 发表于 2020-6-14 15:22
明明是你自己打成中文符号……
而且你给出的方法本身就是错的。


请问一下,我哪里出错了呢?
我看到错误了,不过中文双引号,不是我打的,谢谢

点评

哦……抱歉  发表于 2020-6-14 15:33
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-14 15:27:33 | 显示全部楼层
BIO-张磊 发表于 2020-6-14 15:04
你对字典创建的多种方法还是不熟悉。
我给你列举的是创建空字典,空列表,空元组,空集合的方法
如果说 ...

谢谢
但a = list(1,2,3)和a = tuple(1,2,3)这种定义是错误的,返回提示为;TypeError: list expected at most 1 argument, got 3。应该是:a = list('1234')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 15:29:33 | 显示全部楼层
hxbstudy 发表于 2020-6-14 15:27
谢谢
但a = list(1,2,3)和a = tuple(1,2,3)这种定义是错误的,返回提示为;TypeError: list expected at  ...

谢谢,我的思维定式了,以前没有注意到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 19:07:27 | 显示全部楼层
本帖最后由 1223253411 于 2020-6-14 19:08 编辑

"" 字符串
()元组
[] 列表
{} 如果直接是花括号就是字典,如果里面有键值对就是字典,没有就是集合
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-20 17:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表