买了本学习python的书,看了几天,想写个简单的程序,下面就是一个简单的类似记事本一样的小程序,器功能主要有: 1提示你是想流泪这个文件还是想写东西到这个文件 2.输入R或者r,表示想看这个程序写的文件...3,输入W或者w,表示想写东西到这个文件 4,如果输入Q或者q,表示想退出程序 期间得到很到热心的Q友的帮助,下面贴出代码和注释,大家感兴趣可以看下,有好多地方可以修改的地方,如果有不对的地方.../usr/bin/env python import os import string print ("This notepad write by python 2.6") print ("Editor...while True: print ("#############This is a notepad programe writed by python!...由于python对源代码的格式缩进有严格的要求,所有大家写的时候要注意,我把源代码也传了上来,如果感谢去,可以看看。。。。
摘要: 本文是使用Python,结合Tkinter开发简单记事本。 本文的操作环境:ubuntu,Python2.7,采用的是Pycharm进行代码编辑,个人很喜欢它的代码自动补齐功能。 ...最近很想对python加深学习一下,同时也是想试着做一些东西,今天使用python,结合Tkinter来做一个简单的跨平台记事本。...最终实现的记事本如下,也算是麻雀虽小,五脏俱全了,之后也是会继续完善的: ? ...如上图,我们可以看到这个记事本主要分为三个模块:文件,编辑和关于,结合我自身的习惯外加四个toolbar:新建、打开、撤销和保存。下来就我个人构建这个记事本做个总结。...快捷键亲测可用~ 这算是对此次开发的简单记事本的一个总结,之后有时间也是会添加更多的功能。
问题本质要不要用集成开发工具写代码而言,是不是用记事本写代码和编程本身厉害与否没有多大的关系,倒是有很多人建议在初学编程的时候,先以记事本学习为主,这种是有一定道理的,毕竟记事本写代码空白一张对于初学者来讲需要考虑的东西对于掌握基本的东西多点...,毕竟很多接口在写的时候没有了联想功能只能靠大脑去想,倒是真能锻炼自己的独立能力。...说到记事本写代码,要说这方面表现的比较厉害的在linux下面直接完全的键盘操作不用鼠标,工作效率高的惊人,当然需要记住大量的快捷键,要比直接图形界面的操作效率高很多,linux下面直接搞好VIM能够体会到纯键盘操作的快感...3.框架思想,这种属于在编程思想和编码水平之上的东西了,迈向顶级的关键,绝大部分属于普通的程序员,真正在食物链顶层的才有几个,有些有这种能力但是没有展示的机会,也是挺可惜。...程序员对自己最好的宣传是做过的产品。 ?
记事本 1. 案例介绍 tkinter 是 Python下面向 tk 的图形界面接口库,可以方便地进行图形界面设计和交互操作编程。tkinter 的优点是简单易用、与 Python 的结合度好。...tkinter 在 Python 3.x 下默认集成,不需要额外的安装操作;不足之处为缺少合适的可视化界面设计工具,需要通过代码来完成窗口设计和元素布局。...本例采用的 Python 版本为 3.8,如果想在 python 2.x下使用 tkinter,请先进行安装。...需要注意的是,不同 Python 版本下的 tkinter 使用方式可能略有不同,建议采用 Python3.x 版本。...本例难度为中级,适合具有 Python 基础和 Tkinter 组件编程知识的用户学习。 2. 示例效果 38c6f86dea12c6ab43c728772eb52194.jpg 3.
该部分设计类同Visval Studio内的设计,改下各部件的objectName!...设计完保存为editor.ui 第二步: 将.ui文件编译成.py文件 cmd.exe cd 到改文件所在的文件夹 然后输入pyuic4 editor.ui > editor.py ?...1.程序编译后的出现的界面 ? 2. open file 读文件 ? 3.save file 保存文件 ? 4.保存成功 ok,study more...
Tkinter自定义记事本 Python中我们通常使用tkinter来进行UI界面的编写,本文我们来使用tkinter实现自定义记事本。...记事本设计思考 想要完成记事本,我们首先需要考虑一个正常的记事本都需要具有哪些功能,我们将这些功能按键添加到我们的UI界面上即可。...一般功能如下: 新建文本文档 打开本地文件 保存文本文档 功能项:剪切、复制、粘贴等 设定好了基本的功能选项之后我们再来思考实现记事本的思路。...创建记事本窗口 设定记事本菜单项 给不同的菜单项配置不同的功能选项 运行笔记本 代码实现示例 创建记事本窗口 创建窗口的时候,我们要设定好窗口的高度、宽度、文本区域以及各种菜单,与设定的内容如下: class...kwargs['height'] except KeyError: pass # 设置窗口标题 self.root.title("Python
而框架会接管程序运行的整个生命期,只在必要的某个时候,调用你自己写的部分程序代码,完成你要求的功能。...#如果是主程序而不是模块,运行整个应用 if __name__ == '__main__': app.run() 仍然只看第10至第12行的内容,这是我们自己写的。...---- 挑战 上面所讲述的基本知识已经足够了,我们开始本讲的挑战:把第十章中的记事本程序,迁移到网络上,称为一个网页版的记事本。 通常一个网络程序开发的流程是这样: ?...这个小程序移植到网络版的好处,是在手机的浏览器中也可以很好的运行,不用必须是一台电脑。 ---- 练习时间 记事本程序一共三项功能,列出记事本内容、增加新的记事,还有删除记事内容。...(id): #返回一个执行成功信息 return "OK" 中间空白的部分,是你要接着写的部分。
小C最近学会了java小程序的开发,他很开心,于是想做一个简单的记事本程序练练手。...他希望他的记事本包含以下功能: 1、append(str),向记事本插入字符串 str(英文字符) 2、delete(k),删除记事本最后k个字符(保证不为空串) 3、print(k),输出记事本第k个字符...(保证不为空串) 4、undo(),撤销最近的1(或者)操作,使记事本回到1(或者2)操作之前的状态 可怜的小C琢磨了半天还是做不来,聪明的你能解决小C的问题吗?...t表示上述问题陈述中定义的操作类型。 如果操作需要参数,则后跟空格分隔的参数。...题目保证所有操作均合法 1 <= q <= 10^6 1 <= k <= |记事本内容长度| 每个测试数据中str的总长度 <= 10^6 请使用 ios::sync_with_stdio(false
参考链接: 使用Tkinter制作记事本 用with 打开一个不存在的文件不会崩溃,简化了劳动。 还遇到一个问题,给窗口设置大小后,文本框和按钮就不出现了,不知道各位大佬有没有知道的。 ...代码如下: #类似记事本小程序,可以打开文件,编辑,保存。...with open(l.get(), 'w') as file: file.write(contents.get('1.0', END)) win = Tk() win.title('记事本
a:b】这个写法,python只能常规的空行,缩进吗? 人生苦短,我用python,下面介绍几种if的方便的方法。...二维列表 c = [b,a][a>b] ········································································ 还有for 循环的...用list解析的 [对(x)的操作 for x in 集合 if 条件] [对(x,y)的操作 for x in 集合1 for y in 集合2 if 条件] 举一个简单的例子: x=[1,2,3,4...] y=[5,6,7,8] 我想让着两个list中的偶数分别相加,应该结果是2+6,4+6,2+8,4+8 下面用一句话来写 [a + b for a in x for b in y if a%2 =...= 0 and b%2 ==0] 之前的博客里用到的 import os from os.path import join, getsize def getdirsize(dir): size
/usr/bin/python #coding:utf-8 #python 写的扫雷游戏 import sys import random class MineSweeping(): #...再重新设置状态值) self.xy_list = [[0 for i in range(self.line)] for i in range(self.row)] # 设置雷的数量...# 设置数字 # 0 表示扫过的雷 # 1 表示类 # 2 表示扫过的类 #获取坐标的数字 pos =...#1 表示运行的状态 #2 表示输出的状态 #3 表示游戏结束的状态 #4 表示游戏获得了完胜 if state ==...break else: self.score += 10 print u'恭喜您获得的完全的胜利
python写的2个小程序 今天早上来公司比较早,就用python写了写数据结构的代码,工作之后虽然参与了一部分开发的工作,但都是在写业务逻辑,时间长了,发现自己成了if-else选手了,索性后面每天都写写...分享一段单链表翻转的python代码和冒泡排序的python代码,大家随意看看。 #!.../usr/bin/env python # -*- coding: UTF-8 -*- # 单链表的翻转功能。...root = reverse(link) while root: print(root.data) root =root.next 冒泡排序的python代码:.../usr/bin/env python # -*- coding:utf8 -*- arr = [1, 34, 3, 48, 27, 46, 79, 35] ''' 实现思路: 冒泡排序的思想就是一次循环将两两数之间相互比较
/usr/bin/env python import re import urllib import urllib2 import sys class dict :...sys.setdefaultencoding('utf8') def serach(self): waitWord = raw_input("输入要查询的内容
解决apache+python无法执行一些root命令的问题 用root启动python服务器端,远程可以执行任何root命令 #/usr/bin/python #Filename:agent.py
编译自:http://www.aosabook.org/en/500L/a-python-interpreter-written-in-python.html 作者:Taavi Burns 翻译:鸿 如有翻译问题或建议...,请公众号留言 Frames 目前可以确认Python虚拟机是一个堆栈机器。...frame是有关代码信息和上下文的集合。随着Python代码的执行,frame会随时创建和销毁。...如果有一个递归调用自己10次的函数,就会有11个frame(每个递归级别拥有一个,另外一个是用于你的module)。通常,Python程序中的每个域都有一个frame。...这时它会将推出call stack顶层的frame的data stack的顶层值。再将整个frame从call stack中弹出并传递出去。
最近在练习一个关于python项目的列表,拿到列表看到这是要实现一个记事本功能,刚开始拿到题目真有点懵。...虽然用python实现excel的处理已经很熟悉了,且已经把python的知识点都学了一遍,但是用起来还是不顺手呐。...好吧,再去翻python关于类的知识,终于给整出来一点门道了。还是代码中解释吧。 注意:这是基于Python3。...#Python支持多种图形界面的库,为了不再麻烦去下载新的库,这里直接使用了python自带的tkinter库,记住本代码主要为了练习实现一个简单的GUI界面,顺便熟悉一下tkinter的使用 from...添加一个属性,名字叫记事本 root.geometry("800x500") #几何布局,初始化主窗口的大小 window = Create(root) #从这里开始正式调用Create
编译自:http://www.aosabook.org/en/500L/a-python-interpreter-written-in-python.html 作者:Taavi Burns 翻译:鸿 如有翻译问题或建议...变量需要一条指令来存储变量的值,STORE_NAME; 一条检索它的指令,LOAD_NAME; 以及变量名称到值的映射。 目前,先忽略命名空间和范围,将变量映射存储在解释器对象本身上。...现在指令中的参数意味着两个不同的东西了:既是“数字”列表的索引,也可以是“名称”列表的索引。 解释器通过检查正在执行的指令知道它应该是哪个索引。 实现这种逻辑(指令和参数的映射关系)。...这时可以利用Python的动态方法查找进行简化。 定义一个名为FOO的方法来执行名为FOO的指令,所以我们可以使用Python的getattr函数来实现方法查找,而不是使用大量的if语句。
,请公众号留言 真正的Python字节码 现在让进入真正的Python字节码中,从一个简单的函数开始: >>> def cond(): ......__code__.co_code是其对应的字节码。平时在编写Python代码时,这些属性几乎没有任何用处,但是现在就能发挥用途了。 >>> cond....通过使用Python标准库中的dis模块(dis是一个字节码反汇编工具,可以翻译低级代码,例如汇编代码或字节码,并以人类可读的方式进行打印出来。)...以第一条指令LOAD_CONST为例,第一列中的2给出的是Python源代码中的行号。第二列是字节码的索引,表示LOAD_CONST指令出现在零位。 第三列是指令本身,映射成人类可读的名称。...(Python的LOAD_CONST与之前玩具解释器的LOAD_VALUE相同,LOAD_FAST与LOAD_NAME功能相同。)因此,这六个字节代表第一行代码,x = 3。
编译自:http://www.aosabook.org/en/500L/a-python-interpreter-written-in-python.html 作者:Taavi Burns 翻译:鸿 如有翻译问题或建议...("ADD_TWO_VALUES", None), ("PRINT_ANSWER", None)], "numbers": [7, 5] } Python...所以我们的指令集分为两部分:指令本身,以及指令需要的常量列表。现在让我们开始写解释器本身。解释器对象拥有一个列表来表示堆栈。该对象还具有描述执行每条指令的方法。...尽管这个解释器功能非常有限,但展现的数字相加的过程几乎就是真正的Python解释器所实现的。不过在这个小例子中,也有几件事需要注意。首先,部分指令需要参数。...在真正的Python字节码中,大约一半的指令有参数。参数与指令紧密结合。但是请注意,指令的参数不同于调用方法的参数。其次,注意ADD_TWO_VALUES指令不需要任何参数。
编译自:http://www.aosabook.org/en/500L/a-python-interpreter-written-in-python.html 作者:Taavi Burns 翻译:鸿 如有翻译问题或建议...下面将会讲述需要多次执行某些指令,或者在特定条件下跳过它们的做法。在代码中编写循环和if语句时,解释器必须能够在指令进行跳转。Python在字节码中用GOTO语句处理循环和条件语句。...在这里,跳转目标是22.第22行的指令会跳到第6行的LOAD_CONST(dis用>>标记跳转目标)。...如果x < 5的结果为False,则解释器将直接跳转到第6行(返回“否”),而跳过第4行(返回“是”)。因此,解释器使用跳转指令来有选择地跳过指令集的一部分。 Python循环也依赖于跳跃。...在第4行的末尾指令JUMP_ABSOLUTE总是将解释器返回循环顶部的指令9。当x < 5变为假时,则POP_JUMP_IF_FALSE跳过循环结尾处的解释器到指令34。
领取专属 10元无门槛券
手把手带您无忧上云