我试图获取Tkinter条目的前三个字符,然后将它们添加到另一个tkinter条目。
例如:
name = Entry=(root, text="Name: ")
age = Entry=(root, text="Age: ")
username
=姓名+年龄
然后我希望将他们名字的前三个字母添加到年龄来创建用户名。 如果用户输入'Taylor'作为'name'而'13'作为'age',我想创建一个名为'username'的变量,其中包含'Tay13'
不确定我是否说得太清楚,但希望你理解。感谢
编辑:刚刚尝试过其他内容并且说'StringVar'对象不可订阅。
答案 0 :(得分:1)
刚刚在Reddit上找到了如何做到这一点。如果还有其他人需要这个,那么这就是答案:
username = name.get()[:3] + age.get()
这会从“名称”中获取前3个字母,并在其末尾添加“年龄”。
感谢帮助过的人。
答案 1 :(得分:0)
您可以执行此操作以获取用户名。 [:3]
拉出字符串的前3个字母。
username = str(name[:3]) + str(age)
print username
答案 2 :(得分:0)
下面的示例每次按下按钮时都会向users
字典添加/更新ID:
try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
except ImportError:
import Tkinter as tk
def update_users():
global users, name, age
user_id = name.get()[:3] + age.get()
users[user_id] = None
print(users)
if __name__ == '__main__':
root = tk.Tk()
users = dict()
name = tk.Entry(root)
age = tk.Entry(root)
update_btn = tk.Button(root, text="Update Users", command=update_users)
name.pack()
age.pack()
update_btn.pack()
root.mainloop()
答案 3 :(得分:0)
这个如何设置这个创建两个entry
窗口小部件来接收条目中的内容。然后您的funtion
打印entry
和slice
中的内容名字和印刷品的前三个字母加上年龄。
from tkinter import *
def Print_variable():
e1 = name.get()
e2 = age.get()
print(e1[:3] + e2)
root = Tk()
root.geometry("400x400")
name = StringVar()
e1 = Entry(root, textvariable=name) # this entry accept the name
e1.pack()
age = StringVar()
e2 = Entry(root, textvariable=age) # this entry accept the age
e2.pack()
b = Button(root, text="print name and age variable", command=Print_variable)
b.pack()
root.mainloop()