python练习题--群组练习题(1)

本群的作业没有指定Python方向,而在于提升群内成员的语言功底,本群热烈欢迎任何程度的Python学习者。

群号:651707058

1.首先自已定义一个变量answer,假如answer = 55,然后提示让用户猜数字,如果用户猜的数字过大,就输出大了,如果猜的数字过小,就输出小了,直到用户猜对了。提示用户猜对了,并给出用户一共猜了多少次。

'例如:answer = 55'

'用户输入:60'

'输出:大了'

'用户输入:50'

'输出:小了'

'用户输入:55'

'输出:正确,一共猜了3次'

count=0
while True: 
    answer=55
    count=count+1
    guess=int(input('请输入你猜的数值:'))
    if guess>answer:
        print('你猜大了!')
        continue
    if guess<answer:
        print('你猜小了!')
        continue
    else:
        print('你猜对了!',end=' ')
        break
print('你猜了{0}次'.format(count))

2.上一题answer是提前设置好的,代码不修改的话,每次运行正确的数字总是55,现在我们需要将answer设置成随机的,这一次代码运行answer是89,下次运行answer就变成另一个数字了,需要在上一题的基础上,再运用random模块里面的函数。

import random
def guess_num(answer):
    count=0
    while True:
        count=count+1
        guess=int(input('请输入你猜的数值:'))
        if guess>answer:
            print('你猜大了!')
            continue
        if guess<answer:
            print('你猜小了!')
            continue
        else:
            print('你猜对了!',end=' ')
            break
    print('你猜了{0}次'.format(count))
if __name__=='__main__':
    answer=random.randint(0,1000)
    guess_num(answer)

3.输入一个正整数n,对其进行因式分解并输出。例如:输入18,输出18=2*3*3

try:
    num=int(input('请输入一个整数:'))
except TypeError as ty:
    print('请输入数字')
for i in range(1,10):
    for j in range(1,10):
        for k in range(1,num):
            if num==i*j*k:
                print('{0}={1}*{2}*{3}'.format(num,i,j,k))

4.设计一个函数装饰器,这个装饰器可以记录任意函数单次调用的运行时间。如果函数的运行时间小于1秒,就不输出其运行时间,否则输出此函数的运行时间。所以我们需要写运行时间小于1秒的函数和运行时间大于1秒的函数去测试。

import time
def show_time(func):
	def inner():
		start_time =time.time()
		func()
		end_time=time.time()
		my_time=end_time-start_time
                if my_time>=1.0:
		        return my_time
	return inner
@show_time
def more():
    print('大于一秒')
    time.sleep(1)#让程序休眠一秒
@show_time
def less():
    print('小于一秒')
print(more())
print(less())

猜你喜欢

转载自blog.csdn.net/qq_35328369/article/details/81410555