簡體   English   中英

選擇一個數字的某一位

[英]Choose a certain digit of a number

假設我有一個數字

num = 3456

我想選擇該數字的第三位數字 (5),然后將該 5 乘以三。 我該怎么做?

假設我們有這個整數:

num = 3457

要選擇特定數字,讓我們先將其轉換為字符串。

num_str = str(num)

現在我們可以選擇第三個字符。

third_digit = num_str[2]

在乘以它之前,我們必須將它轉換回整數。

print(int(third_digit) * 3)

有兩種基本的解決方案:

  1. 將數字更改為字符串。 提取您想要的數字。 將其改回整數。 乘以 3。
  2. 整數除以 10 的冪以刪除所需數字右側的數字。 使用% 10獲取 1 的數字。 乘以 3。

我知道這篇文章很舊,但您可以使用以下方法選擇“十位”數字:

num = 3456
third_digit = num // 10 % 10

如果您不知道數字有多少位,而您想要第 n 位,則可以創建一個函數來選擇任何數字:

import math
num = 3456
def KthDigit(n, k):
    no_of_digits = math.floor(math.log10(n))+1
    return num // 10**(no_of_digits-k) % 10
newnum = KthDigit(num, 3)
print(newnum*3)

num // 10**(no_of_digits-k) 去掉最后一個數字,留下前 k 個數字。 該 mod 10 (%10) 為您提供最后一位數字,即第 k 個數字。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM