|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 zltzlt 于 2019-10-5 19:59 编辑
一只python小菜鸡,大神们看看有什么地方错了嘛,或者有什么可以优化的地方
题目
程序输入有两行,每行一个整数
第1行有一个整数S (0 <= S < 7),表示本月1号是星期几,S=0表示星期日,S=1表示星期一,S=2为星期二,...S=6表示星期六
第2行有一个整数M,表示本月的天数。M的取值只可能是{28,29,30,31}
输出
第一行是"Su Mo Tu We Th Fr Sa",把星期信息显示出来(每天用两个字母表示,中间用一个空格分隔,行尾没有空格)
下边几行输出日历,各数字与第一行的星期对齐,若日期只有一位数则对齐在个位上。行尾不要有多余空格。
a = int(input())
b = int(input())
print('Su','Mo','Tu','We','Th','Fr','Sa')
i = 7
j=int()
k=int()
for j in range(i-a-6,i-a+1):
if j <= 0:
print(' ',end='')
elif 0 < j < i-a:
print('',j,end=' ')
elif j == i-a:
print('',j)
while i <= b-7:
i+=7
for j in range(i-a-6,i-a+1):
if j < 10:
if 0 < j < i-a:
print('',j,end=' ')
else:
print('',j)
elif 10<= j< i-a:
print(j,end=' ')
elif j == i-a:
print(j)
else :
for k in range(i+1-a,b+1):
if k == b:
print(k)
elif k == i-a+7:
print(i-a)
else:
print(k,end=' ')
- a = int(input('本月1号是星期几,S=0表示星期日,S=1表示星期一...: '))
- b = int(input('本月的天数, 取值只可能是[28,29,30,31]: '))
- print('Su','Mo','Tu','We','Th','Fr','Sa')
- print(' '*a*4, end='')
- for index in range(1, b+1):
- if (index+a+1) % 7 == 0:
- print('{0:2}'.format(index))
- else:
- print('{0:2}'.format(index), end=' ')
复制代码
|
|