shijun1208 发表于 2026-2-7 15:11:59

我的python笔记(2026.02.07)-10

#第四十一题
#year = int(input("输入一个年份: "))
#if (year % 4) == 0:
#    if (year % 100) == 0:
#      if (year % 400) == 0:
#            print(year,"是闰年")            # 是整百年但能被400整除的
#      else:
#            print(year,"不是闰年")
#    else:
#      print(year, "是闰年")               # 不是整百年但能被4整除的
#else:
#    print(year,"不是闰年")

#第四十二题
#tabby_cat = "\t我被缩进了。"
#persian_cat = "我被拆分\n成两行了。"
#backslash_cat = "我是 \\ 一只 \\ 猫。"
#fat_cat = """
#我要列一个清单:
#\t* 猫粮
#\t* 小鱼
#\t* 猫薄荷\n\t* 草
#"""
#print(tabby_cat)
#print(persian_cat)
#print(backslash_cat)
#print(fat_cat)

#第四十三题
for mun in range(1, 10):
    for j in range(1,mun+1):
      print(mun, "x" ,j ,"=" ,mun * j ,end=' ')
    print("\n")

#第四十四题
#counts = 3
   
#while counts > 0:
#    temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
#    guess = int(temp)
#    if guess == 8:
#      print("你是小甲鱼心里的蛔虫嘛?!")
#      print("哼,猜中了也没奖励!")
#    else:
#      if guess < 8:
#            print("小啦~")
#      else:
#            print("大啦~")
#    counts = counts - 1

#第四十五题
#height = float(input('Height(m):'))      #输入身高
#weight = float(input('Weight(kg):'))       #输入体重
#BMI = (weight) / ((height) ** 2)         #BMI计算公式
#if BMI < 18:
#    print('1')
#elif BMI <= 20:
#    print('2')
#elif BMI <= 22:
#    print('3')
#elif BMI <= 24:
#    print('4')   
#elif BMI <= 26:
#    print('5')
#elif BMI <= 28:
#    print('6')
#else:
#    print('7')

FishC 发表于 2026-2-7 15:12:31

你的 Python 笔记很棒!第四十三题的代码是想打印九九乘法表,但输出格式不太对,行间距太大了。

问题出在哪?

主要是这行代码:print("\\n")

print() 函数本身就会在结尾自动换行。你又让它打印了一个换行符 \\n,所以每行结束后实际上换了两次行,导致行距过大。

如何改进?

这里有几个方案,可以让乘法表更美观:


[*]方案一:直接使用 print()
这是最简单的修改,去掉多余的换行符。
for mun in range(1, 10):
    for j in range(1, mun+1):
      print(mun, "x", j, "=", mun * j, end=' ')
    print()# 这里只用一个 print() 来换行

[*]方案二:使用格式化字符串对齐
为了让每一列都对齐,看起来更整齐,可以使用 f-string 进行格式化。
for i in range(1, 10):
    for j in range(1, i+1):
      print(f'{i}x{j}={i*j:<2}', end=' ')# :<2 让结果占2个字符宽度,左对齐
    print()# 换行


关于 print 和换行的解释:

[*] 当 print() 不指定 end 参数时,默认以换行符结尾(相当于 end='\\n')。
[*] 你在内层循环中设置了 end=' ',所以打印每个算式后不会换行,而是加一个空格。
[*] 外层循环的 print("\\n") 执行了两次换行(print 自带一次,字符串里有一次),所以行距加倍。


按照方案一修改后,你的乘法表输出就会变得紧凑整齐了!继续加油!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

不二如是 发表于 2026-2-7 20:38:54

加一些自己的学习心得更好~
页: [1]
查看完整版本: 我的python笔记(2026.02.07)-10