Python中获取数字的第一位
要获取数字的第一位数:
- 使用
str()
类将数字转换为字符串。 - 访问索引 0 处的字符。
- 使用
int()
类将结果转换为整数。
num = 246810
first = int(str(num)[0])
print(first) # ?️ 2
我们使用 str()
类将整数转换为字符串,以便我们可以访问特定索引处的字符串。
Python 索引是从零开始的,因此字符串中的第一个字符的索引为 0,最后一个字符的索引为 -1 或
len(my_str) - 1
。
下一步是访问索引 0 处的字符以获取数字的第一位。
一旦我们有了第一个数字,我们就可以使用 int()
类将字符串转换为整数。
num = 246810
first = int(str(num)[0])
print(first) # ?️ 2
如果我们需要获取数字的前 N 位,可以使用相同的方法。
num = 246810
first2 = int(str(num)[:2])
print(first2) # ?️ 24
first3 = int(str(num)[:3])
print(first3) # ?️ 246
字符串切片的语法是 my_str[start:stop:step]
。
start
索引是包含的,而stop
索引是排除的(最多,但不包括)。
切片 my_str[:2]
从索引 0 开始并上升到但不包括索引 2。
或者,我们可以使用递归。
def get_first_digit(number):
if number < 10:
return number
return get_first_digit(number // 10)
print(get_first_digit(2468)) # ?️ 2
print(get_first_digit(514)) # ?️ 5
print(get_first_digit(14)) # ?️ 1
print(get_first_digit(8)) # ?️ 8
该函数检查数字是否小于 10,如果满足条件,则返回该数字。
否则,它返回调用自身的结果,其数字是 floor
除以 10。
整数的除法 /
产生一个浮点数,而整数的下除法 //
产生一个整数。
使用 floor
除法运算符的结果是数学除法的结果,将 floor()
函数应用于结果。
my_num = 50
print(my_num / 5) # ?️ 10.0 (float)
print(my_num // 5) # ?️ 10 (int)
我们用这个数字除以10,直到得到一个个位数,然后返回结果。
你选择哪种方法是个人偏好的问题。我会选择将数字转换为字符串,并在索引0处访问它,因为我觉得这很直观,而且更易读。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。