Python 添加int仍然会创建一个浮点数吗?
在上述情况下,以米为单位的高度很可能被输入为浮点数(即1.8),因此,在声明“bmi=int”和“height=int”后,如果必要,末端bmi是否仍会产生浮点数 是的。如果将浮点添加到Python 添加int仍然会创建一个浮点数吗?,python,python-3.4,Python,Python 3.4,在上述情况下,以米为单位的高度很可能被输入为浮点数(即1.8),因此,在声明“bmi=int”和“height=int”后,如果必要,末端bmi是否仍会产生浮点数 是的。如果将浮点添加到int,则int将在添加之前升级为浮点。是。如果将浮点添加到int,则int将在添加之前升级为浮点。是。如果将浮点添加到int,则int将在添加之前升级为浮点。是。如果将浮点添加到int,则在进行添加之前,int将被提升为浮点。在Python中,当使用浮点和返回浮点的int执行操作时,Python将自动处理返回浮
int
,则int
将在添加之前升级为浮点。是。如果将浮点添加到int
,则int
将在添加之前升级为浮点。是。如果将浮点添加到int
,则int
将在添加之前升级为浮点。是。如果将浮点添加到int
,则在进行添加之前,int
将被提升为浮点。在Python中,当使用浮点和返回浮点的int执行操作时,Python将自动处理返回浮点的操作
例如:
# Simple Bmi Calculator
# Weight (KG) / Height (M) then Answer / Height (m) = BMI
print("Hello, today we will calculate your Body Mass Index")
weight = input("How many kilo's do you weigh? ")
weight = int
height = input("What is your height in metres? ")
height = int
bmi = (weight / height / height)
bmi = int
print("Thank you, your Body Mass Index is ")
print(bmi)
input("\n\nPress the enter key to exit")
这里我们可以看到添加int
和float
的字节码指令
这次行动是我们感兴趣的
从中,我们可以看到以下操作:
>>> my_int = 10000
>>> my_float = 10000.10000
>>> dis.dis('my_int + my_float')
1 0 LOAD_NAME 0 (my_int)
3 LOAD_NAME 1 (my_float)
6 BINARY_ADD
7 RETURN_VALUE
及以下:
到
此时,我们可以继续跟踪传递给或跳到的参数
从这里,我们有很好的理由相信这就是我们所寻找的:
此函数由PySequence_Concat()使用,并具有相同的
签名。尝试数字后,+运算符也会使用它
通过nb_添加插槽添加
然后,我们可以返回并查找我们的nb\u add
调用,结果是一个变量。以下内容将指导我们进行以下工作:
...
if (v->ob_type->tp_as_number != NULL)
slotv = NB_BINOP(v->ob_type->tp_as_number, op_slot);
...
我们可以看到传递的参数被传递到一个CONVERT\u to\u DOUBLE
函数。从这里,我们可以看到:
#定义转换为双精度(obj,dbl)\
if(PyFloat_检查(obj))\
dbl=PyFloat作为双精度(obj)\
else if(将_转换为_double(&(obj),&(dbl))<0)\
返回obj;
在Python中,当您使用浮点和返回浮点的int执行操作时,Python将自动处理返回浮点的操作
例如:
# Simple Bmi Calculator
# Weight (KG) / Height (M) then Answer / Height (m) = BMI
print("Hello, today we will calculate your Body Mass Index")
weight = input("How many kilo's do you weigh? ")
weight = int
height = input("What is your height in metres? ")
height = int
bmi = (weight / height / height)
bmi = int
print("Thank you, your Body Mass Index is ")
print(bmi)
input("\n\nPress the enter key to exit")
这里我们可以看到添加int
和float
的字节码指令
这次行动是我们感兴趣的
从中,我们可以看到以下操作:
>>> my_int = 10000
>>> my_float = 10000.10000
>>> dis.dis('my_int + my_float')
1 0 LOAD_NAME 0 (my_int)
3 LOAD_NAME 1 (my_float)
6 BINARY_ADD
7 RETURN_VALUE
及以下:
到
此时,我们可以继续跟踪传递给或跳到的参数
从这里,我们有很好的理由相信这就是我们所寻找的:
此函数由PySequence_Concat()使用,并具有相同的
签名。尝试数字后,+运算符也会使用它
通过nb_添加插槽添加
然后,我们可以返回并查找我们的nb\u add
调用,结果是一个变量。以下内容将指导我们进行以下工作:
...
if (v->ob_type->tp_as_number != NULL)
slotv = NB_BINOP(v->ob_type->tp_as_number, op_slot);
...
我们可以看到传递的参数被传递到一个CONVERT\u to\u DOUBLE
函数。从这里,我们可以看到:
#定义转换为双精度(obj,dbl)\
if(PyFloat_检查(obj))\
dbl=PyFloat作为双精度(obj)\
else if(将_转换为_double(&(obj),&(dbl))<0)\
返回obj;
在Python中,当您使用浮点和返回浮点的int执行操作时,Python将自动处理返回浮点的操作
例如:
# Simple Bmi Calculator
# Weight (KG) / Height (M) then Answer / Height (m) = BMI
print("Hello, today we will calculate your Body Mass Index")
weight = input("How many kilo's do you weigh? ")
weight = int
height = input("What is your height in metres? ")
height = int
bmi = (weight / height / height)
bmi = int
print("Thank you, your Body Mass Index is ")
print(bmi)
input("\n\nPress the enter key to exit")
这里我们可以看到添加int
和float
的字节码指令
这次行动是我们感兴趣的
从中,我们可以看到以下操作:
>>> my_int = 10000
>>> my_float = 10000.10000
>>> dis.dis('my_int + my_float')
1 0 LOAD_NAME 0 (my_int)
3 LOAD_NAME 1 (my_float)
6 BINARY_ADD
7 RETURN_VALUE
及以下:
到
此时,我们可以继续跟踪传递给或跳到的参数
从这里,我们有很好的理由相信这就是我们所寻找的:
此函数由PySequence_Concat()使用,并具有相同的
签名。尝试数字后,+运算符也会使用它
通过nb_添加插槽添加
然后,我们可以返回并查找我们的nb\u add
调用,结果是一个变量。以下内容将指导我们进行以下工作:
...
if (v->ob_type->tp_as_number != NULL)
slotv = NB_BINOP(v->ob_type->tp_as_number, op_slot);
...
我们可以看到传递的参数被传递到一个CONVERT\u to\u DOUBLE
函数。从这里,我们可以看到:
#定义转换为双精度(obj,dbl)\
if(PyFloat_检查(obj))\
dbl=PyFloat作为双精度(obj)\
else if(将_转换为_double(&(obj),&(dbl))<0)\
返回obj;
在Python中,当您使用浮点和返回浮点的int执行操作时,Python将自动处理返回浮点的操作
例如:
# Simple Bmi Calculator
# Weight (KG) / Height (M) then Answer / Height (m) = BMI
print("Hello, today we will calculate your Body Mass Index")
weight = input("How many kilo's do you weigh? ")
weight = int
height = input("What is your height in metres? ")
height = int
bmi = (weight / height / height)
bmi = int
print("Thank you, your Body Mass Index is ")
print(bmi)
input("\n\nPress the enter key to exit")
这里我们可以看到添加int
和float
的字节码指令
这次行动是我们感兴趣的
从中,我们可以看到以下操作:
>>> my_int = 10000
>>> my_float = 10000.10000
>>> dis.dis('my_int + my_float')
1 0 LOAD_NAME 0 (my_int)
3 LOAD_NAME 1 (my_float)
6 BINARY_ADD
7 RETURN_VALUE
及以下:
到
此时,我们可以继续跟踪传递给或跳到的参数
从这里,我们有很好的理由相信这就是我们所寻找的:
此函数由PySequence_Concat()使用,并具有相同的
签名。尝试数字后,+运算符也会使用它
通过nb_添加插槽添加
然后,我们可以返回并查找我们的nb\u add
调用,结果是一个变量。以下内容将指导我们进行以下工作:
...
if (v->ob_type->tp_as_number != NULL)
slotv = NB_BINOP(v->ob_type->tp_as_number, op_slot);
...
我们可以看到传递的参数被传递到一个CONVERT\u to\u DOUBLE
函数。从这里,我们可以