最近想用python写个切换host的小工具,折腾了好几天,终于实现了第一步。

采用Tkinter编程,text控件接受输入,然后点击save按钮,保存内容到当前文件夹下,文件名为hostb,如下两张图片:

直接上代码:

 #支持中文

 #!coding:gbk

 #导入需要的包
from Tkinter import *
import time
import os
import sys; #reload sys
reload(sys); #设置系统的默认编码为utf8
sys.setdefaultencoding('utf8') root = Tk() #定义键盘时间,敲击键盘,会被打印 def key(event):
print "pressed", repr(event.char) #定义save按钮的点击事件,保存内容到文件当中 def saveClick(event):
with open (os.getcwd()+ r'hostb','w+') as fb:
fb.write(text.get(0.0,'end')) frame = Frame(root, width=300, height=300)
frame.pack() #在frame中定义text空间
text=Text(frame) #放入默认的文案
text.insert(INSERT,"this is text……") #为text bind事件
text.bind("<Key>",key)
text.pack() #定义button按钮
button=Button(frame,text='save') #为按钮绑定事件
button.bind("<Button-1>",saveClick)
button.pack() root.mainloop() 参考资料:http://effbot.org/tkinterbook/tkinter-events-and-bindings.htm 此次比较简单,后续会完善整个程序,为自己做个笔记吧。

python Tkinter接受键盘输入并保存文件的更多相关文章

  1. tkinter获取键盘输入

    tkinter获取键盘输入

  2. 代码实现:从键盘输入接收一个文件夹路径,打印出该文件夹下所有的.java文件名

    package com.loaderman.test; import java.io.File; import java.io.FileReader; import java.util.Scanner ...

  3. Python 3 学习笔记之——键盘输入和读写文件

    1. 键盘输入 Python提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘.input 可以接收一个 Python 表达式作为输入,并将运算结果返回. str = inp ...

  4. Python 注释和键盘输入,输出数据格式化

    Python中的注释有单行注释和多行注释: Python中单行注释以 # 开头,例如: # 这是一个注释 print("Hello, World!") 多行注释用三个单引号 ''' ...

  5. Java接受键盘输入

    import java.util.Scanner;//方法1 import java.io.BufferedReader;//方法2 import java.io.IOException;//方法3 ...

  6. python 自带的ide 不能保存文件

    初学python 用shell写的代码结果不能保存,经查询,原因有人说是因为文件里有中文, import random secret =random.randint(1,100) guess=0 tr ...

  7. python学习===从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。

    #!/usr/bin/python # -*- coding: UTF-8 -*- if __name__ == '__main__': from sys import stdout filename ...

  8. python+selenium模拟键盘输入

    from selenium.webdriver.common.keys import Keys #键盘导入类 --------------------------------------------- ...

  9. C语言 创建一个 txt 文件 bin输入字符 保存文件在工作文件夹里

    int main(void) { char s[70]; FILE *fp; fp=fopen("123.txt","r"); if((fp=fopen(&qu ...

随机推荐

  1. vi/vim使用指北 ---- Sample Editing

    本篇介绍vim的基础操作,各种编辑模式的切换,光标的移动,删除,撤销/重做,保存,查找等基础命令: 基础操作 编辑文件 vim  [options] [file ...] 模式 打开文件后进入vim的 ...

  2. POJ 2823

    Sliding Window Time Limit: 12000MS   Memory Limit: 65536K Total Submissions: 35941   Accepted: 10636 ...

  3. PageControl(弹性滚动)

    使用网上源码KYAnimatedPageControl     self.pageControl = [[KYAnimatedPageControl alloc]initWithFrame:CGRec ...

  4. CRM-性能测试报告

    1.     概述 1.1.    测试目的 CRM系统性能测试是针对系统并发处理能力.交易响应时间等性能指标所进行的验证性测试.目的是尽可能地模拟生产环境的前提下,实现以下目标: 获取上线版本测试需 ...

  5. PHP 字符串函数--替换、正则匹配等

    名称 支持正则 特 点 备注 str_replace X 字符串替换函数,大小写敏感   str_ireplace X 字符串替换函数,大小写不敏感,支持数组式批量替换 感谢网友franci, 提醒添 ...

  6. UVA 11076 Add Again 计算对答案的贡献+组合数学

    A pair of numbers has a unique LCM but a single number can be the LCM of more than one possiblepairs ...

  7. http://blog.csdn.net/woshiyjk/article/details/7895888

    http://blog.csdn.net/woshiyjk/article/details/7895888

  8. Java多线程-线程的调度(休眠)

    Java线程调度是Java多线程的核心,只有良好的调度,才能充分发挥系统的性能,提高程序的执行效率. 这里要明确的一点,不管程序员怎么编写调度,只能最大限度的影响线程执行的次序,而不能做到精准控制. ...

  9. iOS开发多线程--技术方案

    pthread 实现多线程操作 代码实现: void * run(void *param) {    for (NSInteger i = 0; i < 1000; i++) {         ...

  10. JavaWeb项目开发案例精粹-第6章报价管理系统-06po层

    1. <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www ...