本文实例讲述了Python简单实现两个任意字符串乘积的方法。分享给大家供大家参考,具体如下:
题目:
给定两个任意数字组成的字符串,求乘积,字符可能很大,但是python具有无限精度的整数在这里就不需要考虑这个问题了
下面是简单的实现:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#!usr/bin/env python
#encoding:utf-8
'''''
__Author__:沂水寒城
功能:两个任意字符串乘积
'''
def two_strs_mutiply(one_str, two_str):
'''''
'''
if one_str[ 0 ] = = '-' :
flag1 = - 1
one_str = one_str[ 1 :]
else :
flag1 = 1
if two_str[ 0 ] = = '-' :
flag2 = - 1
two_str = two_str[ 1 :]
else :
flag2 = 1
if one_str = = '0' or two_str = = '0' :
return 0
else :
one = int (one_str)
two = int (two_str)
res = one * two * flag1 * flag2
return res
if __name__ = = '__main__' :
one_str_list = [ '0' , '120' , '20' , '43' , '89765432138' , '98594' , '98765432123' ]
for i in range ( len (one_str_list) - 1 ):
one_str,two_str = one_str_list[i],one_str_list[i + 1 ]
print one_str,two_str, '----->' ,two_strs_mutiply(one_str,two_str)
|
结果如下:
0 120 -----> 0
120 20 -----> 2400
20 43 -----> 860
43 89765432138 -----> 3859913581934
89765432138 98594 -----> 8850333016213972
98594 98765432123 -----> 9737679014735062
[Finished in 0.3s]
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/together_cz/article/details/76794438