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

In [90]: 2*7
Out[90]: 14 In [91]: a=10
In [92]: a*10
Out[92]: 100

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

In [93]: "a"*10
Out[93]: 'aaaaaaaaaa' In [94]: ['']*10
Out[94]: ['', '', '', '', '', '', '', '', '', '']

2.乘方:

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

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

In [108]: a =[0,1,2,3,4,5,6,7,8,9]

In [109]: start,*midle,end=a

In [110]: start
Out[110]: 0 In [111]: end
Out[111]: 9 In [112]: midle
Out[112]: [1, 2, 3, 4, 5, 6, 7, 8]

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

In [117]: a=[1, 2, 3, 4, 5, 6, 7, 8]

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

5.形式参数

def func(*args,**kwargs):
print(args)
print(kwargs) func(1, 2, 3, 4, 5, name="", age="") # (1, 2, 3, 4, 5)
# {'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. WebApi笔记

    WebApi有一段时间没用了,这几天用webapi做了一个接口供第三方调用,又重新折腾了下,做个笔记记录下心得,防止遗忘. 1.webapi使用的RESTful风格的传参方式,其实就是充分利用HTTP ...

  2. codeforces 277 A Learning Languages 【DFS 】

    n个人,每个人会一些语言,两个人只要有会一门相同的语言就可以交流,问为了让这n个人都交流,至少还得学多少门语言 先根据n个人之间他们会的语言,建边 再dfs找出有多少个联通块ans,再加ans-1条边 ...

  3. eclipse 启动程序时错误弹窗:multiple problems have occurred

    .log内容如下: !ENTRY org.eclipse.ui 4 4 2017-04-14 09:31:05.341!MESSAGE An internal error has occurred.! ...

  4. day21 模块

    目录 模块 import 与 from...import 循环导入问题 解决方案一 解决方案二 Python文件的两种用途 从普通的面条型代码,到函数型代码,其实是在做什么? 封装代码,一个函数差不多 ...

  5. data is not None

    在读django的form源码: def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None, initial=Non ...

  6. You-Dont-Need-JQuery (你不需要JQuery)

    看完这篇文章我才觉得真的要用JQuery ,因为实在是有些地方设计的使用太复杂了, document.querySelector() 和 Document.querySelectorAll 的确是很方 ...

  7. 字典树Trie Tree

    又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它的优点是:利用字符串的公共前缀 ...

  8. How Google Backs Up The Internet Along With Exabytes Of Other Data

    出处:http://highscalability.com/blog/2014/2/3/how-google-backs-up-the-internet-along-with-exabytes-of- ...

  9. 线段树合并(【POI2011】ROT-Tree Rotations)

    线段树合并([POI2011]ROT-Tree Rotations) 题意 现在有一棵二叉树,所有非叶子节点都有两个孩子.在每个叶子节点上有一个权值(有nn个叶子节点,满足这些权值为1-n1-n的一个 ...

  10. Map的四种遍历方法

    1.取值遍历 for(String key:map.keySet()){ System.out.println("key="+key+"and value=" ...