深山小兽 发表于 2020-8-17 20:05:26

请大神帮忙,代码打出的数据对齐问题!

我的程序运行后有时候就会出现不对齐的情况有什么解决方法?

import random
print("---------------谷小伟制作的双色球摇奖程序--------------")
i = 1
while i < 100000000000:
    d = input("请输入摇奖次数,开始摇奖:")
    print()
    if d.isdigit():
      times = int(d)
      if times < 100000000000:
            while times > 0:
                red = random.sample(range(1, 34), 6)
                blue = random.randint(1, 16)
                print("红色开奖号码是:", *red, "\t" ,"蓝色开奖号码是:", blue)
                print()
                times -= 1
      else:
            print("抱歉,您输入的次数有误!")      
    else:
      print("抱歉,您输入的不是数字,麻烦您输入一个整数!")
    i += 1      

print("游戏结束!")

永恒的蓝色梦想 发表于 2020-8-17 20:10:00

两个 TAB 就对齐了。import random
print("---------------谷小伟制作的双色球摇奖程序--------------")
i = 1
while i < 100000000000:
    d = input("请输入摇奖次数,开始摇奖:")
    print()
    if d.isdigit():
      times = int(d)
      if times < 100000000000:
            while times > 0:
                red = random.sample(range(1, 34), 6)
                blue = random.randint(1, 16)
                print("红色开奖号码是:", *red, "\t\t" ,"蓝色开奖号码是:", blue)
                print()
                times -= 1
      else:
            print("抱歉,您输入的次数有误!")      
    else:
      print("抱歉,您输入的不是数字,麻烦您输入一个整数!")
    i += 1      

print("游戏结束!")

深山小兽 发表于 2020-8-17 21:59:04

永恒的蓝色梦想 发表于 2020-8-17 20:10
两个 TAB 就对齐了。

还是一样的,打的次数多了一样出现这种情况,突然就出现一个不对齐的。

永恒的蓝色梦想 发表于 2020-8-17 22:14:56

深山小兽 发表于 2020-8-17 21:59
还是一样的,打的次数多了一样出现这种情况,突然就出现一个不对齐的。

没有更好的办法了。如果有,那就再多加几个 TAB。

深山小兽 发表于 2020-8-17 22:54:08

永恒的蓝色梦想 发表于 2020-8-17 22:14
没有更好的办法了。如果有,那就再多加几个 TAB。

好的,谢谢

kcal 发表于 2020-8-18 04:25:47

试一下这个import random
print("---------------谷小伟制作的双色球摇奖程序--------------")
i = 1
while i < 100000000000:
    d = input("请输入摇奖次数,开始摇奖:")
    print()
    if d.isdigit():
      times = int(d)
      if times < 100000000000:
            while times > 0:
                red = random.sample(range(1, 34), 6)
                str_red = []
                for each in red:
                  each = str(each)
                  if len(each) == 1:
                        each = '0'+each
                  str_red.append(each)
                blue = random.randint(1, 16)
                print("红色开奖号码是:", *str_red, "\t" ,"蓝色开奖号码是:", blue)
                print()
                times -= 1
      else:
            print("抱歉,您输入的次数有误!")      
    else:
      print("抱歉,您输入的不是数字,麻烦您输入一个整数!")
    i += 1      

print("游戏结束!")

newoay 发表于 2020-8-18 09:07:50

本帖最后由 newoay 于 2020-8-18 09:14 编辑

import random
print("---------------谷小伟制作的双色球摇奖程序--------------")
i = 1
while i < 100000000000:
    d = input("请输入摇奖次数,开始摇奖:")
    print()
    if d.isdigit():
      times = int(d)
      if times < 100000000000:
            while times > 0:
                red = random.sample(range(1, 34), 6)
                red_f= ['%2d' %x for x in red]
                blue = random.randint(1, 16)
                blue_f='%2d' %blue
                print("红色开奖号码是:",*red_f, "\t" ,"蓝色开奖号码是:", blue_f)
                print()
                times -= 1
      else:
            print("抱歉,您输入的次数有误!")      
    else:
      print("抱歉,您输入的不是数字,麻烦您输入一个整数!")
    i += 1      

print("游戏结束!")


newoay 发表于 2020-8-18 09:09:15

本帖最后由 newoay 于 2020-8-18 09:16 编辑

newoay 发表于 2020-8-18 09:07


等级不够,就没法上图了。

有个疑问,python自带IDLE下运行正常,在vscode里显示就不正常了。
希望大佬解答

深山小兽 发表于 2020-8-18 14:28:43

永恒的蓝色梦想 发表于 2020-8-17 20:10
两个 TAB 就对齐了。

谢谢

深山小兽 发表于 2020-8-18 14:29:20

kcal 发表于 2020-8-18 04:25
试一下这个

谢谢,解决了,排列很整齐。

深山小兽 发表于 2020-8-18 14:29:56

newoay 发表于 2020-8-18 09:07


谢谢,你的方法让我学到了新知识!

永恒的蓝色梦想 发表于 2020-8-18 16:56:05

newoay 发表于 2020-8-18 09:09
等级不够,就没法上图了。

有个疑问,python自带IDLE下运行正常,在vscode里显示就不正常了。


因为空格的大小在各种终端上显示是不一样的{:10_277:}

newoay 发表于 2020-8-18 19:41:51

永恒的蓝色梦想 发表于 2020-8-18 16:56
因为空格的大小在各种终端上显示是不一样的

啊,这么坑,那在VS code上就看不出效果了
页: [1]
查看完整版本: 请大神帮忙,代码打出的数据对齐问题!