字典赋值
dicts={},python3默认为一个空字典而不是空集合
要建一个空集合:
empty_set = set()
print(type(empty_set)) # 这将打印出 <class 'set'>
dicts[(1,2)]=({3,(4,5)})
字典格式是dicts[key]=value
这里key是一个元组(1,2)
value是一个集合{3,(4,5)} 因为只有一个元素的元组要加逗号,类似于(value1,)
又由于在Python中,集合(set
)是无序的,这意味着集合中的元素没有特定的顺序。因此,当您将元组 (1, 2)
与集合 {3, (4, 5)}
放入字典中时,内部集合的元素的顺序不是固定的,而是无序的,元素的顺序可能会在不同的Python版本或不同的执行环境中发生变化。
字符串编码
urllib.quote(line.decode("gbk").encode("utf-16"))
urllib.quote()
是 Python 2 中的一个函数,它用于将字符串进行 URL 编码,以便能够在 URL 中安全地传递特殊字符和非ASCII字符。在 Python 3 中,这个函数被移到了 urllib.parse
模块下,并被命名为 urllib.parse.quote()
。
解析这段代码:
line先以gbk编码解码为Unicode字符串,这个unicode字符串又编码为utf-16,最后urllib.quote()
将UTF-16编码的字节字符串编码为URL安全字符串。
所以这个URL字符串的解码顺序为:
URL---->utf-16---->unicode---->gbk
相关知识:
GBK(Guóbiāo Kuàngjià Biǎozhǔn),是汉字内码国家标准(GB,Guóbiāo)的缩写,它是一种字符编码,主要用于处理汉字字符。GBK 编码是一种双字节字符编码,支持包括繁体字在内的数千个汉字字符,同时也包括了一些特殊符号、拉丁字母、数字等。
Unicode(统一码、万国码、国际码、统一字符集)是一种国际标准,它用来表示各种书写系统中的字符,包括不同语言、符号、标点和特殊字符。Unicode 的目的是提供一个统一的字符编码方案,以便在不同的计算机系统、操作系统和编程语言中能够准确、一致地表示和交换文本数据。
UTF-16(Unicode Transformation Format-16)是一种Unicode字符编码方式,用于表示Unicode字符集中的字符。Unicode字符是一种标准,用于表示和编码几乎所有世界上的文字符号、符号和符号