说明:#%% 是在spyder编辑器中分区的字符串。请略过····
#%%
# 题目1:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的两位数?都是多少?
# 该题目不用创建函数
num = [1,2,3,4]
newnum = []
for i in range(len(num)):
for j in range(len(num)):
if i != j:
a = num[i]*10 + num[j]
newnum.append(a)
print('两位数的个数 :%i ,都是 :% s' % (len(newnum),newnum))
#%%
# 题目2:输入三个整数x,y,z,请把这三个数由小到大输出,可调用input()。(需要加判断:判断输入数据是否为数字)
# 提示:判断是否为数字:.isdigit()
# 该题目需要创建函数
def thress_num():
x,y,z = input('请输入三个数字:').split(',')
lst = [x,y,z]
if x.isdigit() and y.isdigit() and z.isdigit() :
lst = sorted(lst)
for i in lst:
print(i,end=' ')
else:
thress_num()
a = thress_num()
a
#%%
# 题目3:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
# 提示:利用while语句,条件为输入的字符不为'\n'.
# 该题目不需要创建函数
'''
s.isalnum() 所有字符都是数字或者字母
s.isalpha() 所有字符都是字母
s.isdigit() 所有字符都是数字
s.islower() 所有字符都是小写
s.isupper() 所有字符都是大写
s.istitle() 所有单词都是首字母大写,像标题
s.isspace() 所有字符都是空白字符、\t、\n、\r
'''
st1 = input('请输入一行字符:')
letter = []
space = []
figure = []
other_str = []
while st1 != '':
for i in range(len(st1)):
s = st1[i]
if s.isalpha():
letter.append(s)
elif s.isspace():
space.append(s)
elif s.isdigit():
figure.append(s)
else:
other_str.append(s)
st1 = st1[i+1:]
print('字母个数:%i,空格个数:%i,数字个数:%i,其他字符个数:%i'%(len(letter),len(space),len(figure),len(other_str)))
#%%
# 题目4:猴子吃桃问题
# 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,
# 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
# 以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?
# 提示:采取逆向思维的方法,从后往前推断。
# 该题目不需要创建函数
做不出来!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
a1 = 1 + 0
a2 = 4 \3
a3 = 10 \6
a4 = 22 \12
a5 = 46 \24
a6 = 94 \48
while sums = 0:
#%%
# 题目5:猜数字问题,要求如下:
# ① 随机生成一个整数
# ② 猜一个数字并输入
# ③ 判断是大是小,直到猜正确
# ④ 判断时间
# 提示:需要用time模块、random模块
# 该题目不需要创建函数
import time
import random
a = random.randint(1,10000)
while True:
start = time.perf_counter()
guess = eval(input('请输入一个整数:'))
if guess < a:
print('too little!')
elif guess > a :
print('too bigger')
else:
break
print('用时 :%s s' % (time.perf_counter()-start))