如何使用Python编写一个函数,该函数生成一个不超过九位数的正整数,然后分别计算并返回其位数以及逆序表示的数值?
时间: 2024-10-20 21:02:33 浏览: 16
在Python中,你可以创建一个函数来生成一个随机的9位正整数,并计算其位数和逆序数。这里是一个简单的示例:
```python
import random
def generate_and_calculate(n):
# 生成一个9位数范围内的正整数
number = random.randint(10**8, 10**9 - 1)
# 计算位数
def count_digits(num):
return len(str(abs(num)))
# 计算逆序数
def reverse_number(num):
return int(''.join(sorted(str(num), reverse=True)))
# 返回生成的数字、位数和逆序数
return number, count_digits(number), reverse_number(number)
# 调用函数并打印结果
original_num, digit_count, reversed_num = generate_and_calculate()
print(f"Original number: {original_num},\nDigit count: {digit_count},\nReversed number: {reversed_num}")
```
这个函数首先生成了一个9位的正整数,然后使用内置的`str()`函数转换成字符串并计算位数,以及对字符串排序后再次转换回整数获取逆序数。
阅读全文