在Python中获取数字的前两位

在 python 中获取数字的前两位数

Get the first Two digits of a number in Python

要获取数字的前两位数:

  1. 使用str()该类将数字转换为字符串。
  2. 使用字符串切片来选择字符串的前 2 个字符。
  3. 使用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,最后一个字符的索引为-1or 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 位数字并返回结果。

您选择哪种方法是个人喜好的问题。我会继续将数字转换为字符串并使用字符串切片,因为我发现它非常直观且更具可读性。

发表评论