Python星号*与**用法分析

yipeiwu_com6年前Python基础

本文实例分析了Python星号*与**用法。分享给大家供大家参考,具体如下:

1. 加了星号(*)的变量名会存放所有未命名的变量参数,不能存放dict,否则报错。

如:

def multiple(arg, *args):
  print "arg: ", arg
  #打印不定长参数
  for value in args:
    print "other args:", value
if __name__ == '__main__':
  multiple(1,'a',True)

输出:

2. 加了星号(**)的变量名会存放所有未命名的变量参数

def multiple2(**args):
  #打印不定长参数
  for key in args:
    print key + ":" + bytes(args[key])
if __name__ == '__main__':
  multiple2(name='Amy', age=12, single=True)

输出

3. 有 *args 和 **dictargs:

def multiple(arg, *args, **dictargs):
  print "arg: ", arg
  #打印args
  for value in args:
    print "other args:", value
  #打印dict类型的不定长参数 args
  for key in dictargs:
    print "dictargs:" + key + ":" + bytes(dictargs[key])
if __name__ == '__main__':
  multiple(1,'a',True, name='Amy',age=12, )

输出:

另外,在Python数学运算中*代表乘法,**为指数运算,示例代码如下:

>>> 2*4
8
>>> 2**4
16
>>> 

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python错误提示:[Errno 24] Too many open files的分析与解决

背景 最近在工作中发现了一个错误,在执行多线程扫描脚本的时候频繁出现下面这个错误 HTTPConnectionPool(host=‘t.tips', port=80): Max re...

Python(TensorFlow框架)实现手写数字识别系统的方法

Python(TensorFlow框架)实现手写数字识别系统的方法

手写数字识别算法的设计与实现 本文使用python基于TensorFlow设计手写数字识别算法,并编程实现GUI界面,构建手写数字识别系统。这是本人的本科毕业论文课题,当然,这个也是机器...

Python的Flask框架中SQLAlchemy使用时的乱码问题解决

一、问题 这两天在学习使用flask + SQLAlchemy 定制一个web查询页面的demo ,在测试时,发现查询到的结果显示乱码 。这里将解决方法记录下。 二、解决思路 1、fla...

python生成指定长度的随机数密码

复制代码 代码如下:#!/usr/bin/env python# -*- coding:utf-8 -*- #导入random和string模块import random, string...

python使用rsa非对称加密过程解析

python使用rsa非对称加密过程解析

这篇文章主要介绍了python使用rsa非对称加密过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1、安装rsa 支持pyth...