关于 tkinter的grid位置的问题 宽度的问题

如下两个例子,发现位置居然不用,一个是网上教程写的,一个是自己写的,请问为什么得到不一样的结果? 第一个例子是网上教程




```的:
from tkinter import (Tk, Button)
from tkinter.constants import RIGHT, LEFT, X, Y, BOTH

main_win = Tk()
main_win.title('渔道的pack布局')
#width = 300
#height = 301
main_win.geometry('301x300')
# print(main_win.keys())

apple_color = 'Crimson'
banana_color = 'Yellow'
orange_color = 'Orange'
grape_color = 'Purple'

fruit = {'apple':'Crimson', 'banana':'Yellow', 'orange':'Orange', 'grape':'Purple'}
#Button(main_win,text='0',bg='red').grid(columnspan=150,padx=50)
#b0.grid_info()
#b1=Button(main_win,text='2',bg='red')
#b1.grid(columnspan=3)
#print(b1.grid_info())
# 默认显示效果
i = 0
for k,v in fruit.items():
    bt = Button(main_win, text=k, fg='black', bg=v)
    bt.grid(column=i, columnspan=3)
    i += 1
    print(bt.grid_info())


main_win.mainloop()

以下是我写的

from tkinter import (Tk, Button)
from tkinter.constants import RIGHT, LEFT, X, Y, BOTH

main_win = Tk()
main_win.title('渔道的pack布局')
#width = 300
#height = 301
main_win.geometry('301x300')
# print(main_win.keys())




#Button(main_win,text='0',bg='red').grid(columnspan=150,padx=50)
#b0.grid_info()
b1=Button(main_win,text='2',bg='red')
b1.grid(column=0)
print(b1.grid_info())
#ab=Button(main_win,text='ppl',bg='Crimson').grid(colunm=2)
ac=Button(main_win,text='ppl',bg='Crimson').grid(column=2)
Button(main_win,text='bnn',bg='Yellow').grid(column=3)
Button(main_win,text='rng',bg='orange').grid(column=4,columnspan=1)
Button(main_win,text='prg',bg='Purple').grid(column=5)



main_win.mainloop()

结果居然不一样


![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/888471567336133.gif "=600 #left")

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

谁能帮我给我个答案啊啊