python 中有很多地方用到星号,有时候会想知道这个*是干嘛用的,总结如下,有不当之处,还望不吝指出,谢谢.
1.乘法:
在很多时候是用作乘法的,例如:

  1. In [90]: 2*7
  2. Out[90]: 14
  3.  
  4. In [91]: a=10
  5. In [92]: a*10
  6. Out[92]: 100

当然还包括字符串,列表等等的乘,姑且都当做乘法吧.例如:

  1. In [93]: "a"*10
  2. Out[93]: 'aaaaaaaaaa'
  3.  
  4. In [94]: ['']*10
  5. Out[94]: ['', '', '', '', '', '', '', '', '', '']

2.乘方:

  1. In [98]: 2**3
  2. Out[98]: 8

3.切片当中的使用(解压可迭代对象赋值给多个变量):

  1. In [108]: a =[0,1,2,3,4,5,6,7,8,9]
  2.  
  3. In [109]: start,*midle,end=a
  4.  
  5. In [110]: start
  6. Out[110]: 0
  7.  
  8. In [111]: end
  9. Out[111]: 9
  10.  
  11. In [112]: midle
  12. Out[112]: [1, 2, 3, 4, 5, 6, 7, 8]

4.对于可迭代对象的用法(不晓得怎么描述,姑且这样叫):

  1. In [117]: a=[1, 2, 3, 4, 5, 6, 7, 8]
  2.  
  3. In [118]: print(a)
  4. [1, 2, 3, 4, 5, 6, 7, 8]
  5.  
  6. In [119]: print(*a)
  7. 1 2 3 4 5 6 7 8
  8.  
  9. In [120]: print(*range(10))
  10. 0 1 2 3 4 5 6 7 8 9
  11.  
  12. -------------------------2017102216:04:30更新----------------------------------------------
  1. def foo(*args):
    for v in args:
    print(v)
  2.  
  3. a = ['h', 'e', 'l', 'l', 'o']
    foo('h', 'e', 'l', 'l', 'o')
    foo(*a)
  4.  
  5. def f(**kwargs):
    # print(kwargs)
    for k, v in kwargs.items():
    print("{}>>>>{}".format(k, v))
  6.  
  7. f(name="tom", age=20)
    f(**{'age': 20, 'name': 'tom'})
  8.  
  9. def func(*args, **kwargs):
    for v in args:
    print(v)
    for k, v in kwargs.items():
    print("{}>>>>{}".format(k, v))
  10.  
  11. a = ['h', 'e', 'l', 'l', 'o']
    func(*a, **{'age': 20, 'name': 'tom'})
    ------------------------------------------------------------------------------------------------------

5.形式参数

  1. def func(*args,**kwargs):
  2. print(args)
  3. print(kwargs)
  4.  
  5. func(1, 2, 3, 4, 5, name="", age="") # (1, 2, 3, 4, 5)
  6. # {'age': '10', 'name': '123'}

python中*号用法总结的更多相关文章

  1. python中*号和**号的用法

    1.乘法符号 2.可变长参数 当我们使用函数时,需要传入不定个数的位置参数时,就可以使用*号表示,即*args,以元组形式传入:需要传入不定个数的关键字参数时,使用**表示,即**kwargs,以字典 ...

  2. python中xrange用法分析

    本文实例讲述了python中xrange用法.分享给大家供大家参考.具体如下: 先来看如下示例: >>> x=xrange(0,8) >>> print x xra ...

  3. python 中@ 的用法【转】

    这只是我的个人理解: 在Python的函数中偶尔会看到函数定义的上一行有@functionName的修饰,当解释器读到@的这样的修饰符之后,会先解析@后的内容,直接就把@下一行的函数或者类作为@后边的 ...

  4. Python中flatten用法

    Python中flatten用法 原创 2014年04月16日 10:20:02 标签: Python / flatten 22667 一.用在数组 >>> a = [[1,3],[ ...

  5. 列表[‘hello’ , ‘python’ ,’!’ ] 用多种方法拼接,并输出’hello python !’ 以及join()在python中的用法简介

    列表[‘hello’ , ‘python’ ,’!’ ] 用多种方法拼接,并输出’hello python !’ 使用字符串链接的四种方法都可以创建 字符串拼接一共有四种方法,也可以应用到列表的拼接中 ...

  6. python中“end=”用法

    python中“end=”用法:例如print(“#”,end=" \n"),默认换行,print(“#”,end=" ")则在循环中不换行

  7. python中pkl用法

    原文连接:https://www.jianshu.com/p/2ecadebe6d13 python中pkl用法 经常遇到在Python程序运行得到了一些字符串.列表.字典等数据,想要长久的保存下来, ...

  8. Python中print用法里面% ,"%s 和 % d" 代表的意思

    Python 编程 里面% . "%s 和 % d" 代表的意思 %s,表示格化式一个对象为字符 %d,整数 "Hello, %s"%"zhang3& ...

  9. 详解python中@的用法

    python中@的用法 @是一个装饰器,针对函数,起调用传参的作用. 有修饰和被修饰的区别,‘@function'作为一个装饰器,用来修饰紧跟着的函数(可以是另一个装饰器,也可以是函数定义). 代码1 ...

随机推荐

  1. javascript: 基于原型的面向对象编程

    Douglas Crockford指出javascript是世界上最被误解的编程语言.由于javascript缺少常见的面向对象概念,许多程序猿认为javascript不是一个合适的语言.我在做第一个 ...

  2. luogu P2000 拯救世界 生成函数_麦克劳林展开_python

    模板题. 将所有的多项式按等比数列求和公式将生成函数压缩,相乘后麦克劳林展开即可. Code: n=int(input()) print((n+1)*(n+2)*(n+3)*(n+4)//24)

  3. 路飞学城Python-Day36

    24-记录的增删改查 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n);   语法二: INSERT I ...

  4. 11、E-commerce in Your Inbox:Product Recommendations at Scale-----产品推荐(prod2vec和user2vec)

    一.摘要 本文提出一种方法,将神经语言模型应用在用户购买时间序列上,将产品嵌入到低维向量空间中.结果,具有相似上下文(即,其周围购买)的产品被映射到嵌入空间中附近的向量. 二.模型: 低维项目向量表示 ...

  5. zoj 3471 Most Powerful(状压dp+Tsp问题+连续性问题)

    上来直接一波敲键盘,直接套Tsp问题的代码 然后WA 发现貌似这道题没有连续性. Tsp问题是一条路径,一个点到另一个点,多了一个限制,所以就需要加多一维 而这道题没有限制,也就是说那一维不需要加,我 ...

  6. poj 3254 Corn Fields (状压dp)(棋盘dp)

    状压dp入门题 因为当前行的状态只和上一行有关 所以可以一行一行来做 因为m <= 12所以可以用二进制来表示放了或者没有放 0表示没放,1表示放 f[i][state]表示第i行状态为stat ...

  7. 06001_NoSQL概述

    1.什么是NoSQL? NoSQL(NoSQL=Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库. 2.关于关系型数据库和nosql数据库 (1)关系型 ...

  8. java内存管理之垃圾回收及JVM调优

    GC(garbage Collector 垃圾收集器)作用:a.内存的动态分配:b.垃圾回收注:Java所承诺的自动内存管理主要是针对对象内存的回收和对象内存的分配. 一.垃圾标记 程序计数器.Jav ...

  9. mysql5.7官网直译SQL语句优化--分组优化

    1.14Group By Optimization 分组优化 大多数方法为了满足分组查询需要扫描整个表并且创建一个临时表,其中每组中的值都是连续的,如果可以使用聚合函数和临时表获取各个分组.在某些情况 ...

  10. [using_microsoft_infopath_2010]Chapter2 表单需求,使用表决矩阵

    本章概要 1.从模板创建表单 2.从创建表单收集需求 3.使用全部表单决策 4.决定需要创建哪种表单