飞桨领航团-Python巩固习题-1
问题1-1
编写一个程序,查找所有此类数字,这些数字可以被7整除,但不能是5的倍数,介于2000和3200之间(均包括在内)。所获得的数字应以逗号分隔的顺序打印在一行上。
#提示:考虑使用range(#begin,#end)方法
l=[]
for i in range(2000, 3201):
if (i%7==0) and (i%5!=0):
l.append(str(i))
print(','.join(l))
问题1-2
编写一个程序,可以计算给定数字的阶乘。结果应以逗号分隔的顺序打印在一行上。
示例:
输入:8
输出:40320
#提示:如果将输入数据提供给问题,则应假定它是控制台输入
def fact(x):
if x == 0:
return 1
return x * fact(x - 1)
x=int(input())
print(fact(x))
1
问题1-3
使用给定的整数n,编写一个程序生成包含(i,i * i)的字典,该字典是介于1和n之间的整数(都包括在内),最后程序打印字典。
示例:
输入:8
输出:{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}
#提示:如果将输入数据提供给问题,则应假定它是控制台输入。考虑使用dict()
n=int(input())
d=dict()
for i in range(1,n+1):
d[i]=i*i
print(d)
{1: 1}
问题1-4
编写一个程序,该程序从控制台接受一个逗号分隔的数字序列,并生成一个包含每个数字的列表和元组。
示例:
输入:34,67,55,33,12,98
输出:[‘34’, ‘67’, ‘55’, ‘33’, ‘12’, ‘98’](‘34’, ‘67’, ‘55’, ‘33’, ‘12’, ‘98’)
#提示:如果将输入数据提供给问题,则应假定它是控制台输入。tuple()方法可以将列表转换为元组
values=input()
l=values.split(",")
t=tuple(l)
print(l)
print(t)
问题1-5
定义一个至少具有两个方法的类:
getString:从控制台输入中获取字符串
printString:以大写形式打印该字符串
需要编写简单的测试功能来测试类方法
#提示:使用init方法构造一些参数
class InputOutString(object):
def __init__(self):
self.s = ""
def getString(self):
self.s = input()
def printString(self):
print(self.s.upper())
strObj = InputOutString()
strObj.getString()
strObj.printString()
注:内容转自飞桨官方,网址戳这 百度飞桨官方文档