KeyError 发表于 2022-12-22 10:54:00

测试:生成窗口

请大家生成一个带输入框的窗口,不能用EasyGui,Tkinter,Sys,Pygame。

chinajz 发表于 2022-12-22 10:54:01

import PySimpleGUI as sg
layout = []
for i in range(1,10):
    layout += ,
layout += []
window = sg.Window('请输入或修改词条:', layout)
event, values = window.read()


KeyError 发表于 2022-12-23 10:49:16

本帖最后由 KeyError 于 2022-12-23 11:06 编辑

{:10_270:}
进阶:
你能只使用3行代码实现吗?
禁止使用exec!
Tkinter:
pip install tkinter
from tkinter import *
root=Tk()
Entry(root).pack()
mainloop()
5行。
EasyGui:
pip install easygui
from easygui import *
enterbox(msg="")
3行,但题目不许。
Pygame:
pip install pygame
import pygame
#太长,省略......
Sys:
pip install sys
import sys
#太长,省略......
PySimpleGUI:
pip install PySimpleGUI
import PySimpleGUI as sg
layout = []
for i in range(1,10):
    layout += ,
layout += []
window = sg.Window('请输入或修改词条:', layout)
event, values = window.read()
7行。

tommyyu 发表于 2022-12-23 10:59:05

KeyError 发表于 2022-12-23 10:49
进阶:
你能只使用3行代码实现吗?

稍微改一下2楼的代码{:10_256:}exec("import PySimpleGUI as sg\nlayout = []\nfor i in range(1,10):\n    layout += ,\nlayout += []\nwindow = sg.Window('请输入或修改词条:', layout)\nevent, values = window.read()")

KeyError 发表于 2022-12-23 11:09:23

tommyyu 发表于 2022-12-23 10:59
稍微改一下2楼的代码

exec()里一个'\n'算换了一行.
毕竟你的也可以改成这样:
exec('''
import PySimpleGUI as sg
layout = []
for i in range(1,10):
    layout += ,
layout += []
window = sg.Window('请输入或修改词条:', layout)
event, values = window.read()''')

tommyyu 发表于 2022-12-23 11:10:59

KeyError 发表于 2022-12-23 11:09
exec()里一个'\n'算换了一行.
毕竟你的也可以改成这样:

确实{:10_256:}

tommyyu 发表于 2022-12-23 11:14:15

本帖最后由 tommyyu 于 2022-12-23 11:15 编辑

KeyError 发表于 2022-12-23 10:49
进阶:
你能只使用3行代码实现吗?
禁止使用exec!


不让用exec?
我再改改{:10_256:}import PySimpleGUI as sg; layout = []
for i in range(1,10): layout += ,
layout += []; window = sg.Window('请输入或修改词条:', layout); event, values = window.read()

zhangjinxuan 发表于 2022-12-23 12:03:09

tommyyu 发表于 2022-12-23 11:14
不让用exec?
我再改改

不用exec,我还可以用eval{:10_279:}

再或者:
import os
os.system("python -c .....")
exit(0)
{:10_279:}

rlllto 发表于 2022-12-24 10:59:29

可以用pysider或pyqt,因为是qt的调用和qt的方法显示,就没必要贴代码出来了。

hveagle 发表于 2022-12-24 13:12:17

我的代码
就是这
3行

hveagle 发表于 2022-12-24 13:14:08

pip install,import,已经2行了呀

Mike_python小 发表于 2022-12-24 14:17:44

print("一个带输入框的窗口")


另外,如果这个回答对你有帮助,请设置“最佳答案”!

liuhongrun2022 发表于 2023-1-7 09:52:31

本帖最后由 liuhongrun2022 于 2023-1-7 09:56 编辑

来自于Python1.3的降维打击!
两行!(但是违反规定了,不能用Tkinter)
还有,tkinter是标准库,不用pip下载
from tkinter import *
Entry(None,{Pack:{'side':'top'}}).mainloop()

chinajz 发表于 2023-1-7 10:04:44

最好看最实用的窗口,是用glade3生成的窗口,调用操控都很方便。

陶远航 发表于 2023-1-7 10:17:13

KeyError 发表于 2022-12-23 10:49
进阶:
你能只使用3行代码实现吗?
禁止使用exec!


tkinter和sys不用安装吧

liuhongrun2022 发表于 2023-1-8 08:40:43

KeyError 发表于 2022-12-23 10:49
进阶:
你能只使用3行代码实现吗?
禁止使用exec!


我的两行可以设为最佳答案吗?

liuhongrun2022 发表于 2023-2-7 19:38:20

经过优化后,只需一行代码即可创建带输入框的窗口
__import__('tkinter').Entry(None,{Pack:{'side':'top'}}).mainloop()
@KeyError
页: [1]
查看完整版本: 测试:生成窗口