Python写倒序输出(任意位数)
倒序输出数字
这种方法最后输出的是字符而不是数字
1
2
3
4
5
6
7
8
9
|
x = int ( input ( '请输入任意一个数字:' )) y = str (x) #转换为字符串 l = len (y) #长度 a = [] for i in range (l): a.append(y[l - 1 - i]) # print(a) for j in a: print (j,end = '') |
这种的话输出的就是任意位数字的倒序了(注意数字末尾0的话倒序不输出)
1
2
3
4
5
6
|
a = int ( input ( '请输入任意位的数字' )) b = 0 while a> 0 : b = b * 10 + a % 10 a = a / / 10 print (b) |
倒序输出字符串(第一行一个,第二行两个,第三行三个)
1
2
3
4
5
6
7
8
|
a = input ( '请输入:' ) b = [] l = len (a) x = 0 for i in a: b.append(a[l - 1 - x]) x + = 1 print (b) |
逆序输出一个数字Python
问题是:输入一个数字,按照指定要求逆序输出该数字
需求:
使用python语言
逆序输出一个数字
- 如果数字是正数直接输出如:177—>771
- 如果数字是负数保留负号如:-945—>-549
- 如果数字以0结果逆序后需要去除0如:100—>1
- 如果数字很大会造成溢出返回0即可
之前见一个作者写的不是特别好,自己写了一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
mt = input ( "请输入:" ) def reverse(num): s = "" if num< - 2 * * 31 or num> 2 * * 31 - 1 : return 0 else : num_list = list ( str (num)) for it in range ( len (num_list)): if num_list[ - 1 ] = = '0' : num_list.pop() lst = num_list[:: - 1 ] for i in lst: if i = = "-" : s = "-" + s else : s = s + i return s print (reverse( int (mt))) |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_40576301/article/details/88429301