Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

num = int(input("Please give me a number: "))
print(num)
thou = int((num // 1000))
print(thou)
hun = int((num // 100))
print(hun)
ten =int((num // 10))
print(ten)
one = int((num // 1))
print(one)

Tôi đã thử điều này nhưng nó không hoạt động và tôi bị mắc kẹt.

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

Hỏi ngày 24 tháng 9 năm 2015 lúc 3:18Sep 24, 2015 at 3:18

4

Bạn có thể muốn thử một cái gì đó như sau:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums

Và gọi phương thức này như sau.

>>> get_pos_nums(9876)
[6, 7, 8, 9]

Chỉ số

>>> get_pos_nums(9876)
[6, 7, 8, 9]
6 sẽ chứa các đơn vị, chỉ số
>>> get_pos_nums(9876)
[6, 7, 8, 9]
7 sẽ chứa hàng chục, chỉ số
>>> get_pos_nums(9876)
[6, 7, 8, 9]
8 sẽ chứa hàng trăm, v.v.

Hàm này sẽ thất bại với số âm. Tôi để lại việc xử lý các số âm để bạn tìm ra như một bài tập.

Đã trả lời ngày 28 tháng 6 năm 2018 lúc 0:28Jun 28, 2018 at 0:28

Aaron Saaron sAaron S

4.6534 Huy hiệu vàng28 Huy hiệu bạc29 Huy hiệu đồng4 gold badges28 silver badges29 bronze badges

Như thế này?

a = str(input('Please give me a number: '))

for i in a[::-1]:
    print(i)

Demo:

Please give me a number: 1324
4
2
3
1

Vì vậy, số đầu tiên là số, tiếp theo là hàng chục, v.v.

Đã trả lời ngày 24 tháng 9 năm 2015 lúc 3:24Sep 24, 2015 at 3:24

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

Remi guanremi guanRemi Guan

20.7K17 Huy hiệu vàng62 Huy hiệu bạc85 Huy hiệu Đồng17 gold badges62 silver badges85 bronze badges

1

num = 1234

thousands = num // 1000
hundreds = (num % 1000) // 100
tens = (num % 100) // 10
units = (num % 10)

print(thousands, hundreds, tens, units)
# expected output: 1 2 3 4

"//" Trong Python là viết tắt của phân chia số nguyên. Nó phần lớn loại bỏ phần phân số khỏi số điểm nổi và trả về một số nguyên

Ví dụ:

4/3 = 1.333333
4//3 = 1

Đã trả lời ngày 8 tháng 6 năm 2021 lúc 2:19Jun 8, 2021 at 2:19

Bạn có thể thử phân tách số bằng hàm này:

def get_place_values(n):
    return [int(value) * 10**place for place, value in enumerate(str(n)[::-1])]

Ví dụ:

get_place_values(342)
>>> [2, 40, 300]

Đã trả lời ngày 8 tháng 6 năm 2021 lúc 2:19

def get_place_val_to_word(n):
    n_str = str(n)
    num_to_word = {
        "0": "ones",
        "1": "tens",
        "2": "hundreds",
        "3": "thousands"
    }
    return f"{n_str[0]} {num_to_word[str(n_str.count('0'))]}"

Bạn có thể thử phân tách số bằng hàm này:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
0

Ví dụ:

Đã trả lời ngày 8 tháng 6 năm 2021 lúc 2:19

Bạn có thể thử phân tách số bằng hàm này:Jun 29, 2021 at 2:19

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

Tiếp theo, bạn có thể viết một hàm trợ giúp:imakappa

Sau đó, bạn có thể kết hợp cả hai như vậy:3 silver badges4 bronze badges

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
2

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
1

Đã trả lời ngày 29 tháng 6 năm 2021 lúc 2:19Nov 26, 2021 at 5:21

Imakappaimakappa

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
3

1163 Huy hiệu bạc4 Huy hiệu đồng

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
4

Điều này làm công việc. Nó cũng đơn giản để hiểu là tốt.

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

Đã trả lời ngày 26 tháng 11 năm 2021 lúc 5:21Aug 12, 2019 at 10:10

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
5

Xin lưu ý rằng tôi đã lấy cảm hứng từ câu trả lời trên của 6pack Kid để lấy mã này. Tất cả những gì tôi đã thêm là một cách để có được giá trị địa điểm chính xác thay vì chỉ nhận được các chữ số.Feb 2, 2020 at 14:53

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

Khi bạn chạy mã này, với đầu vào của 12345, đây là những gì sẽ là đầu ra:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
6

Điều này đã giúp tôi nhận được câu trả lời cho những gì tôi cần.Jun 29, 2021 at 11:45

Đã trả lời ngày 12 tháng 8 năm 2019 lúc 10:10PCM

Đã trả lời ngày 2 tháng 2 năm 2020 lúc 14:532 gold badges7 silver badges29 bronze badges

Cách nhanh nhất:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
7

usage:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
8

Output:

def get_pos_nums(num):
    pos_nums = []
    while num != 0:
        pos_nums.append(num % 10)
        num = num // 10
    return pos_nums
9

Đã trả lời ngày 29 tháng 6 năm 2021 lúc 11:45Nov 6, 2021 at 21:56

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

PCMPCMChris

2.7412 huy hiệu vàng7 Huy hiệu bạc29 Huy hiệu đồng1 gold badge22 silver badges35 bronze badges

>>> get_pos_nums(9876)
[6, 7, 8, 9]
0

Điều này sẽ làm điều đó, hoàn toàn không sử dụng các chuỗi và xử lý bất kỳ số nguyên nào được truyền cho

>>> get_pos_nums(9876)
[6, 7, 8, 9]
9 hợp lý.

Đã trả lời ngày 6 tháng 11 năm 2021 lúc 21:56

Chrischris

>>> get_pos_nums(9876)
[6, 7, 8, 9]
1

2.0801 Huy hiệu vàng22 Huy hiệu bạc35 Huy hiệu ĐồngNov 12, 2021 at 22:04

Vì vậy, đối với đơn vị "một" là 1 trong khi đối với "hàng chục", đơn vị là 10 và vv.

>>> get_pos_nums(9876)
[6, 7, 8, 9]
2

Nó có thể xử lý bất kỳ chữ số và thậm chí số âm một cách hiệu quả.

Vì vậy, được đưa ra số 256, để có được chữ số ở vị trí hàng chục bạn làmApr 7 at 20:15

Đã trả lời ngày 12 tháng 11 năm 2021 lúc 22:04Matt

Tôi đã phải làm điều này trên nhiều giá trị của một mảng và nó không phải lúc nào cũng ở cơ sở 10 (đếm bình thường - hàng chục, hàng trăm, ngàn, v.v.). Vì vậy, tham chiếu hơi khác nhau: 1 = vị trí 1 (1S), 2 = vị trí thứ 2 (10 giây), 3 = vị trí thứ 3 (100s), 4 = vị trí thứ 4 (1000s). Vì vậy, giải pháp vector hóa của bạn:11 silver badges34 bronze badges

Làm việc nhanh và cũng hoạt động trên các mảng trong các cơ sở khác nhau.

Đã trả lời ngày 7 tháng 4 lúc 20:15

Mattmatt

>>> get_pos_nums(9876)
[6, 7, 8, 9]
3

Output:

2.47211 huy hiệu bạc34 huy hiệu đồng

Trong Python, bạn có thể thử phương pháp này để in bất kỳ vị trí nào của một số.

Ví dụ: nếu bạn muốn in 10 vị trí của một số, nhân vị trí số với 10, thì nó sẽ là 100, lấy modulo của đầu vào cho 100 và sau đó chia nó cho 10.16 gold badges39 silver badges57 bronze badges

Lưu ý: Nếu vị trí được tăng thì số lượng số không trong modulo và trong phân chia cũng tăng:Apr 26, 2021 at 16:50

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python

1

>>> get_pos_nums(9876)
[6, 7, 8, 9]
4By the way I used this to find the tenth place of a number

>>> get_pos_nums(9876)
[6, 7, 8, 9]
5

TomerikooJun 28, 2021 at 20:38

Hướng dẫn how to find tens digit of a number in python - cách tìm chữ số hàng chục của một số trong python