我正在尝试创建一个程序,该程序计算一个数字中的有效数字。我一直试图创建一个代码块来检测0是否在其他2个整数之间,必须大于1但小于9。
我是编码的新手,很抱歉,如果有任何显而易见的事情,但是我尝试获取任何数字的计数并将其放入参数中,但我没有运气。如果该数字与12300000相似,我就能得到程序来计算有效数字,那么只有3个有效数字。
num = list(input('What is your number: '))
num_len = len(num)
any = ['1','2','3','4','5','6','7','8','9']
for random in range(1,10):
any_list = list(str(random))
if '0' in num:
new_len = num_len - num.count('0')
new_len1 = new_len + num.count('0') + 1
if '0' in num[1:]:
print('true')
if '0' in num[new_len:new_len1]:
print(len(num) - num.count('0'))
else:
print(len(num))
如果零在2个数字之间(例如101),则应计为3个有效零。如果0在2个数字之间,则下一个0不是,例如1010,它应该只包含3个有效数字(101)。
答案 0 :(得分:0)
解决问题。与其尝试检测要包含的中间零点,不如要排除排除的外部零点。已经有一个内置函数:str.strip()
。
significant = len(num.strip('0'))