这道题是某Python学习群里的某位小伙伴求助的,经尝试后,把过程写下。
使用WinXP + Python 3环境。
关键点有3个。
1、用户输入检查;2、分子的次幂计算;3、分母的阶乘计算。
1、用户输入x并检查:
1.1 首先把输入的内容保存起来。x_input = input("\n请输入x(x >= 1,且为整数)的值:")
1.2 判断是否为纯数字, 使用字符串isdigit() 方法检测字符串是否只由数字组成。 if x_input.isdigit(): 如果字符串只包含数字则返回 True 否则返回 False。
1.3 如果返回值为True 输入的内容为纯数字,把字符串类型转换成整数类型,x_int = int(x_input)。
1.4 判断x_int是否为0,if x_int == 0:
1.5 如果为0,告知用户重新输入。
1.6 如果不为0,跳出while循环,输入n。
1.7 如果返回值为False,输入的内容含有非数字的字符,告知用户重新输入。<