发布网友 发布时间:2022-04-21 01:26
共3个回答
懂视网 时间:2022-04-18 08:14
Python有几种方法来读取标准输入的数据。1、sys.stdin
sys.stdin提供了read()和readline()函数,如果想按一行行来读取,可以考虑使用它:
import sys line = sys.stdin.readline() while line: print line, line = sys.stdin.readline()
注意:如果没有数据,io会被堵塞,所以可以对标准输入做数据检查(Linux):
import sys import select if select.select([sys.stdin], [], [], 0.0)[0]: help_file_fragment = sys.stdin.read() else: print("No data", file=sys.stderr) sys.exit(2)
2、input()
如果想使用交互的方式(提示输入),Python 3.x可以使用input(),而Python 2.x 使用raw_input():
x = raw_input('请输入您的名字:')
热心网友 时间:2022-04-18 05:22
可以使用StringVar()对象来完成,把Entry的textvariable属性设置为StringVar(),再通过StringVar()的get()和set()函数可以读取和输出相应内容,以下为测试代码(python3.x):
from tkinter import *
def submit():
print(u.get())
p.set(u.get())
root = Tk()
root.title("测试")
frame = Frame(root)
frame.pack(padx=8, pady=8, ipadx=4)
lab1 = Label(frame, text="获取:")
lab1.grid(row=0, column=0, padx=5, pady=5, sticky=W)
#绑定对象到Entry
u = StringVar()
ent1 = Entry(frame, textvariable=u)
ent1.grid(row=0, column=1, sticky='ew', columnspan=2)
lab2 = Label(frame, text="显示:")
lab2.grid(row=1, column=0, padx=5, pady=5, sticky=W)
p = StringVar()
ent2 = Entry(frame, textvariable=p)
ent2.grid(row=1, column=1, sticky='ew', columnspan=2)
button = Button(frame, text="登录", command=submit, default='active')
button.grid(row=2, column=1)
lab3 = Label(frame, text="")
lab3.grid(row=2, column=0, sticky=W)
button2 = Button(frame, text="退出", command=quit)
button2.grid(row=2, column=2, padx=5, pady=5)
#以下代码居中显示窗口
root.update_idletasks()
x = (root.winfo_screenwidth() - root.winfo_reqwidth()) / 2
y = (root.winfo_screenheight() - root.winfo_reqheight()) / 2
root.geometry("+%d+%d" % (x, y))
root.mainloop()
效果如下:
热心网友 时间:2022-04-18 06:40
from Tkinter import *