python基础练习

#Question 1
#Question:
#Write a program which will find all such numbers which are divisible by 7 but are not a #multiple of 5, between 2000 and 3200 (both included).The numbers obtained should be #printed in a comma-separated sequence on a single line.
# Q1
def mutiple1():
    for i in range(2000,3201):
        if(((i%7)==0)&((i%5)!=0)):
            print(i,end=',')
def mutiple2():
    print(*(i for i in range(0, 5)),sep=',')

mutiple1()
#Question 2
#Question:
#Write a program which can compute the factorial of a given numbers.The results should #be printed in a comma-separated sequence on a single line.Suppose the following input #is supplied to the program: 8 Then, the output should be:40320
# Q2
def fact1(n):
    s=1
    while(n>0):
        s=s*n
        n=n-1
    return s

def fact2(n):
    s=1
    for i in range(1,n+1):
        s=i*s
    return s

def fact3(n):
    return 1 if n <= 1 else n * fact3(n - 1)


print(fact3(8)) 
#Question 3
#Question:
#With a given integral number n, write a program to generate a dictionary that contains #(i, i x i) such that is an integral number between 1 and n (both included). and then #the program should print the dictionary.Suppose the following input is supplied to the #program: 8
# Q3
def generate_dic1(n):
    dic={}
    for i in range(1,n+1):
        dic[i]=i*i
#       print(dic[i])
    return dic
 
def generate_dic2(n):
    dic={i:i*i for i in range(1,n+1)}
    print(dic)
    
generate_dic2(8)

你可能感兴趣的:(python基础知识,python)