python中**是啥啥意思?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中**是啥啥意思?相关的知识,希望对你有一定的参考价值。
详细看例子:
radius = 5
pi = 3.14159
volume = 4.0/3 * pi * radius ** 3
print "The volume is", volume
输出结果:
[root@localhost t]$ python pi.py
The volume is 523.598333333 这个523.598333333是怎么的来的阿?
搞不懂怎么算的?
a//b,应该是对除以b的结果向负无穷方向取整后的数
5//2=2(2.5向负无穷方向取整为2),同时-5//2=-3(-2.5向负无穷方向取整为-3)
/与//的区别
在Python中/表示浮点整除法,返回浮点结果,也就是结果为浮点数;而//在Python中表示整数除法,返回大于结果的一个最大的整数,意思就是除法结果向下取整。 参考技术A
1、两个值相加,然后返回值给符号左侧的变量
举例如下:
>>> a=1
>>> b=3
>>> a+=b(或者a+=3)
>>> a
4
2、用于字符串连接(变量值带引号,数据类型为字符串)
>>> a='1'
>>> b='2'
>>> a+=b
>>> a
'12'
扩展资料:
Python常用运算符
1、算术运算符
2、比较运算符
3、赋值运算符
4、位运算符
5、逻辑运算符
6、成员运算符
7、身份运算符
8、运算符优先级
以下所列优先级顺序按照从低到高优先级的顺序;同行为相同优先级。
Lambda #运算优先级最低
逻辑运算符: or
逻辑运算符: and
逻辑运算符:not
成员测试: in, not in
同一性测试: is, is not
比较: <,<=,>,>=,!=,==
按位或: |
按位异或: ^
按位与: &
移位: << ,>>
加法与减法: + ,-
乘法、除法与取余: *, / ,%
正负号: +x,-x
具有相同优先级的运算符将从左至右的方式依次进行,用小括号()可以改变运算顺序。
参考资料:
参考资料来源:百度百科-Python
** 在python里面表示幂运算
传递实参和定义形参(所谓实参就是调用函数时传入的参数,形参则是定义函数是定义的参数)的时候,你还可以使用两个特殊的语法:``*`` ** 。
调用函数时使用* **
test(*args)* 的作用其实就是把序列 args 中的每个元素,当作位置参数传进去。比如上面这个代码,如果 args 等于 (1,2,3) ,那么这个代码就等价于 test(1, 2, 3) 。
test(**kwargs)** 的作用则是把字典 kwargs 变成关键字参数传递。比如上面这个代码,如果 kwargs 等于 'a':1,'b':2,'c':3 ,那这个代码就等价于 test(a=1,b=2,c=3) 。
定义函数参数时使用* **
def test(*args):
...定义函数参数时 * 的含义又要有所不同,在这里 *args 表示把传进来的位置参数都装在元组 args 里面。比如说上面这个函数,调用 test(1, 2, 3) 的话, args 的值就是 (1, 2, 3) 。:
def test(**kwargs):
...类似的, ** 就是针对关键字参数和字典的了。 调用 test(a=1,b=2,c=3) 的话, kwargs 的值就是 'a':1,'b':2,'c':3 了。
普通的参数定义和传递方式和 * 们都可以和平共处,不过显然 * 必须放在所有位置参数的最后,而 ** 则必须放在所有关键字参数的最后,否则就要产生歧义了
参考技术C ***是幂的意思,radius = 5 #把5赋予radius
pi = 3.14159 #把3.14159 赋予pi
volume = 4.0/3 * pi * radius ** 3
#volume = 4.0/3*3.14159*5的三次方,这里运算符号也有优先级别,先是幂运算,你也可以看成volume = 4.0/3*3.14159*(5的三次方) 参考技术D ** 在python里面表示幂运算,radius**3 表示radius的3次方本回答被提问者和网友采纳
在 Python 类参数中添加一个点是啥意思?
【中文标题】在 Python 类参数中添加一个点是啥意思?【英文标题】:What does it mean to put a dot in a Python class argument?在 Python 类参数中添加一个点是什么意思? 【发布时间】:2014-01-05 11:33:31 【问题描述】:在 Python 中,我看到一个类定义如下:
from protorpc import messages
# Create the request string containing the user's name
class HelloRequest(messages.Message):
my_name = messages.StringField(1, required=True)
messages.Message
是什么意思?
【问题讨论】:
【参考方案1】:from protorpc import messages
class HelloRequest(messages.Message):
只是另一种拼写方式:
from protorpc.messages import Message
class HelloRequest(Message):
甚至……
import protorpc
class HelloRequest(protorpc.messages.Message):
即HelloRequest
派生自protorpc
package 的messages
子模块 中的Message
class
。
【讨论】:
我知道继承,但这是第一次看到这种风格。我真的很喜欢蟒蛇。谢谢【参考方案2】:基本上,HelloRequest 来自名为 protopc 的特定组的消息子模块中名为 Message 的类。你所谓的论点不是论点。它只是说 HelloRequest 使用 messages.Message 作为它的开始类。
【讨论】:
以上是关于python中**是啥啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript里啥啥.document然后各种方法那些怎么记啊??