题目1:
输入若干个成绩,求所有成绩的平均分。每输入一个成绩后询问是否继续输入下一个成绩,回答yes就继续输入下一个成绩,回答no就停止输入成绩。
numbers=[] #使用列表存放临时数据
while True:
x=input('请输入一个成绩:')
try: #异常处理
numbers.append(float(x))
except:
print('不是合法成绩:')
while True:
flag=input('继续输入吗?(yes/no)')
if flag.lower()not in ('yes','no'): #限定用户输入内容必须为yes或no
print('只能输入yes或no')
else:
break
if flag.lower()=='no':
break
print(sum(numbers)/len(numbers))
注意:(1)Python lower() 方法转换字符串中所有大写字符为小写,(返回值)返回将字符串中所有大写字符转换为小写后生成的字符串;
(2)同一级的语句开头必须在同一垂直线上
题目2:编写程序,判断今天是今年的第几天
import time
date=time.localtime() #获取当前日期时间
year,month,day=date[:3]
day_month=[31,28,31,30,31,30,31,31,30,31,30,31]
if year%400==0 or (year%4==0 and year%100!=0): #判断是否是闰年
day_month[1]=29
if month==1:
print(day)
else:
print(sum(day_month[:month-1])+day)
题目3:编写代码,输出由星号*组成的菱形图案,并且可以灵活控制图案的大小
def main(n):
for i in range(n):
print(('* '*i).center(n*3))
for i in range(n,0,-1):
print(('* '*i).center(n*3))
举例,当n=4(print(main(4)))