在 python 中获取数字的前两位数
Get the first Two digits of a number in Python
要获取数字的前两位数:
- 使用
str()
该类将数字转换为字符串。 - 使用字符串切片来选择字符串的前 2 个字符。
- 使用
int()
该类将结果转换为整数。
主程序
number = 13579 first_2 = int(str(number)[:2]) print(first_2) # 👉️ 13
我们使用str()
该类将整数转换为字符串,因此我们可以使用字符串切片。
切片my_str[:2]
从索引 0 开始,一直到索引 2,但不包括索引 2。
字符串切片的语法是my_str[start:stop:step]
.
索引是包含的start
,而stop
索引是排他的(最多,但不包括)。
Python 索引是从零开始的,因此字符串中的第一个字符的索引为
0
,最后一个字符的索引为-1
or 。 len(my_str) - 1
一旦我们有了前 2 位数字,我们就使用int()
该类将字符串转换为整数。
主程序
number = 13579 first_2 = int(str(number)[:2]) print(first_2) # 👉️ 13
您可以使用相同的方法获取数字的前 N 位。
主程序
number = 13579 first_3 = int(str(number)[:3]) print(first_3) # 👉️ 135 first_4 = int(str(number)[:4]) print(first_4) # 👉️ 1357
或者,您可以使用递归。
主程序
def get_first_two_digits(number): if number < 100: return number return get_first_two_digits(number // 10) print(get_first_two_digits(2468)) # 👉️ 24 print(get_first_two_digits(514)) # 👉️ 51 print(get_first_two_digits(95)) # 👉️ 95 print(get_first_two_digits(7)) # 👉️ 7
该函数检查数字是否小于 100,如果满足条件,则返回数字。
否则,它返回用数字 floor-除以 10 调用自己的结果。
整数除法/
产生一个浮点数,而//
整数除法产生一个整数。
floor()
使用 floor 除法运算符的结果是对结果应用函数的数学除法。
主程序
my_num = 50 print(my_num / 5) # 👉️ 10.0 (float) print(my_num // 5) # 👉️ 10 (int)
我们将数字除以 10,直到得到一个 2 位数字并返回结果。
您选择哪种方法是个人喜好的问题。我会继续将数字转换为字符串并使用字符串切片,因为我发现它非常直观且更具可读性。