Python 序列与映射的解包操作
生活随笔
收集整理的這篇文章主要介紹了
Python 序列与映射的解包操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
解包就是把序列或映射中每個元素單獨提取出來,序列解包的一種簡單用法就是把首個或前幾個元素與后面幾個元素分別提取出來,例如:
first, seconde, *rest = sequence
如果sequence里至少有三個元素,那么執行完上述代碼后,first == sequence[0], second == sequence[0], rest == sequence[2:]。
函數接收不確定參數
當函數的參數不確定時,可以使用*args 和**kwargs,*args 沒有key值,**kwargs有key值。
#!/usr/bin/python # -*- coding:utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf-8')''' 當函數的參數不確定時,可以使用*args 和**kwargs,*args 沒有key值,**kwargs有key值。'''def fun_var_args_kwargs(data1, *args, **kwargs):print 'data1:', type(data1), data1print '*args:', type(args), argsprint '**kwargs:', type(kwargs), kwargsfun_var_args_kwargs('this is data1', 2, '3', 4.0, k1='value1', k2='value2')print '-------------'def print_args(*args, **kwargs):print args.__class__.__name__, args, kwargs.__class__.__name__, kwargsprint_args() print_args(1, 2, 3, a='A')打印結果:
data1: <type 'str'> this is data1 *args: <type 'tuple'> (2, '3', 4.0) **kwargs: <type 'dict'> {'k2': 'value2', 'k1': 'value1'} ------------- tuple () dict {} tuple (1, 2, 3) dict {'a': 'A'}總結
以上是生活随笔為你收集整理的Python 序列与映射的解包操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python2.7 跨文件全局变量的方法
- 下一篇: 大量小文件存储提高效率要点详解