在本教程中,我们将学习在 Python 中将字符串转换为整数的方法-
在继续之前,让我们看一个例子-
a='Learning Python is fun'
b= 20
#Displaying the type of a and b
print(type(a))
print(type(b))
输出:
<class 'str'>
<class 'int'>
在上面的例子中,我们分别用一个字符串和一个整数值声明了变量“a”和“b”。
我们可以使用类型()验证它们的数据类型。
这里出现的问题是,为什么我们需要将字符串转换为整数。
下面的程序说明了同样的情况-
value_a = "100"
value_b = "26"
res = value_a * value_b
print("The multiplication of val_a and val_b gives: ",res)
输出:
res = value_a * value_b
TypeError: can't multiply sequence by non-int of type 'str'
由于它会产生这种类型的错误,这就是我们必须将字符串值转换为整数的原因,以便我们可以轻松地继续操作。
是时候看看第一个演示将字符串转换为整数的程序了。
a = '7'
print(type(a))
#using int()
conv_a=int(a)
print(type(conv_a))
conv_a = conv_a+10
print(conv_a)
print(type(conv_a))
输出:
<class 'str'>
<class 'int'>
17
<class 'int'>
说明:
让我们看看上面程序的解释-
- 第一步是用字符串值声明变量“a”。
- 之后,我们使用类型()检查了它的数据类型。
- 为了将字符串转换为整数,我们使用了 int() 然后检查它的类型。
- 现在,我们对变量“a”进行了运算,在它上面加了 10。
- 最后,结果值显示在输出中。
方法 2
在下一个例子中,我们将采用间接的方法将字符串转换为整数。
下面的程序展示了如何做到这一点
value_a = "100"
value_b = "26"
print(type(value_a))
print(type(value_b))
#converting to float
value_a=float(value_a)
#converting to int
value_b=int(value_b)
res_sum=value_a+value_b
print("The sum of value_a and value_b is ",res_sum)
输出:
<class 'str'>
<class 'str'>
The sum of value_a and value_b is 126.0
说明:
让我们了解我们在上面的程序中做了什么-
- 第一步是用字符串值声明两个变量“value_a”和“value_b”。
- 之后,我们使用类型()检查了他们的数据类型。
- 为了将字符串转换为整数,我们使用了 float() 将字符串转换为 float 值。
- 在下一步中,我们将把“value_b”的字符串值转换为整数。
- 现在我们已经添加了‘value a’和‘value b’,并打印了它们的总和。
- 最后,结果值显示在输出中。
方法 3:
在最后一个程序中,我们将讨论 Python 中将字符串转换为 int 的另一个场景。
在这里,我们将看到当一个数字以不同的基数表示时,如何将它转换为以 10 为基数的字符串值。
下面的程序说明了同样的情况-
num_value = '234'
# printing the value of num_value
print('The value of num_value is :', num_value)
#converting 234 to base 10 assuming it is in base 10
print('The value of num_value from base 10 to base 10 is:', int(num_value))
#converting 234 to base 10 assuming it is in base 8
print('The value of num_value from base 8 to base 10 is :', int(num_value, base=8))
#converting 234 to base 10 assuming it is in base 6
print('The value of num_value base 6 to base 10 is :', int(num_value, base=6))
输出:
The value of num_value is: 234
The value of num_value from base 10 to base 10 is: 234
The value of num_value from base 8 to base 10 is: 156
The value of num_value base 6 to base 10 is: 94
说明:
是时候看一下上面节目的解说了。
- 在第一步中,我们已经声明了变量值。
- 由于输出总是以 10 为基数,我们在 int()中提供了不同的基础值。
- 我们这里取的基础值是 10、8 和 6。
- 在执行程序时,会显示预期的输出。
结论
在本教程中,我们学习了将字符串转换为 int 值的不同方法。