我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本文中的主要角色是用在字典类型的数据,主要内容是使用双星号操作符对字典类型数据进行解压,本文内容的主要关注点是双星号操作符。

苏南大叔:python代码,如何利用双星号解压dict字典类型数据? - 解压字典类型
python代码,如何利用双星号解压dict字典类型数据?(图3-1)

大家好,这里是苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码所学所想。本文测试环境:win10python@3.11.0

双星号解压字典类型

下面的代码,关联.format()的使用经验,参考文章:

info = {"name": "苏南大叔", "location": "北京"}
print("我是{name},我住在{location}".format(**info))  # 我是苏南大叔,我住在北京

双星号修饰函数形参

如果把**dict整体当作普通参数来看待的话,其实加不加双星号都没有啥意义。代码如下:

def test(**s):
    print(s.keys())         # dict_keys(['su', 'nan', 'dashu'])
    print(s.values())       # dict_values(['苏', '南', '大叔'])
    print(s["su"])          # 苏

def test2(s):
    print(s.keys())         # dict_keys(['su', 'nan', 'dashu'])
    print(s.values())       # dict_values(['苏', '南', '大叔'])
    print(s["su"])          # 苏
    
me = {"su": "苏", "nan": "南", "dashu": "大叔"}
test(**me)
test2(me)

苏南大叔:python代码,如何利用双星号解压dict字典类型数据? - 代码2
python代码,如何利用双星号解压dict字典类型数据?(图3-2)

正确使用姿势

可能更好的一个使用方法:

def test3(a, **s):
    print(s.keys())    # dict_keys(['su', 'nan', 'dashu'])
    print(s.values())  # dict_values(['苏', '南', '大叔'])
    print(s["su"])

me = {"su": "苏", "nan": "南", "dashu": "大叔"}
test3("aaa", su="苏", nan="南", dashu="大叔")
test3("aaa", **me)

苏南大叔:python代码,如何利用双星号解压dict字典类型数据? - 代码3
python代码,如何利用双星号解压dict字典类型数据?(图3-3)

def who(su, nan, **dashu):
    print(su)                 # 苏
    print(nan)                # 南
    print(dashu,type(dashu))  # {'dashu': '大叔'} <class 'dict'>
me_dict = {'su': '苏', 'nan': '南', 'dashu': '大叔'}
who(**me_dict)

相关文章

结束语

更多python相关文章,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   python