# 1 - Import library import pygame from pygame.locals import * import math import random # 2 - Initialize the game pygame.init() width, height = 640, 480 screen=pygame.display.set_mode((width, height)) keys = [False, False, False, False] playerpos=[1…
HTTP/1.1 默认的连接方式是长连接,不能通过简单的TCP连接关闭判断HttpMessage的结束. 以下是几种判断HttpMessage结束的方式: 1.      HTTP协议约定status code 为1xx,204,304的应答消息不能包含消息体(Message Body), 直接忽略掉消息实体内容. [适用于应答消息] Http Message =Http Header 2.      如果请求消息的Method为HEAD,则直接忽略其消息体.[适用于请求消息] Http Mes…
类似py2exe软件真的能保护python源码吗 背景 最近写了个工具用于对项目中C/C++文件的字符串常量进行自动化加密处理,用python写的,工具效果不错,所以打算在公司内部推广.为了防止代码泄露就考虑不采用直接给源码方式,而python二进制脚本pyc和pyo,虽然提供的不是源码,但可以通过uncompyle2直接得到源码.通过网上资料发现有Windows下的py2exe.Mac下的py2app和跨平台的PyInstaller工具都可以将python脚本打包成可执行文件,第一反应应该满足…
类似py2exe软件真的能保护python源码吗 背景 最近写了个工具用于对项目中C/C++文件的字符串常量进行自动化加密处理,用python写的,工具效果不错,所以打算在公司内部推广.为了防止代码泄露就考虑不采用直接给源码方式,而python二进制脚本pyc和pyo,虽然提供的不是源码,但可以通过uncompyle2直接得到源码.通过网上资料发现有Windows下的py2exe.Mac下的py2app和跨平台的PyInstaller工具都可以将python脚本打包成可执行文件,第一反应应该满足…
学python的人都知道,python中一切皆是对象,如class生成的对象是对象,class本身也是对象,int是对象,str是对象,dict是对象....所以,我很好奇,python是怎样实现这些对象的?带着这份好奇,我决定去看看python的源码,毕竟源码才是满足自己好奇心最直接的方法. 在object.h文件中,定义了两种数据结构PyObject和PyVarObject,代码如下: #define PyObject_HEAD \ Py_ssize_t ob_refcnt; \ struc…
python源码学习(一)——python的总体架构 学习环境: 系统:ubuntu 12.04 STLpython版本:2.7既然要学习python的源码,首先我们要在电脑上安装python并且下载python的源码,ubuntu 12.04 STL自带的python版本为2.7.3,这就可以了,接下来下载源码,下载python2.7.7的源代码,下载结束后解压文件,我们会看到如下文件结构:,接下来介绍一下,demo文件夹里放的是一些例子:Doc文件夹里放的是文档,Grammer是语法分析器,…
Python 笔记 前言(还是叫杂记吧) 在python中一切皆对象, python中的对象体系大致包含了"类型对象", "Mapping对象(dict)", "Sequence对象(list, set, tuple, string)", "Number对象(integer, float, boolean)" 以及 "Python虚拟机自己使用的对象" 在Python中所有的对象都是一个结构体, 所有对象的…
<Python源码剖析>笔记 第七章:编译结果 1.大概过程 运行一个Python程序会经历以下几个步骤: 由解释器对源文件(.py)进行编译,得到字节码(.pyc文件) 然后由虚拟机按照字节码一条一条执行对应的指令 2.PyCodeObject 程序运行时,Python会将编译结果都存放在内存中的PyCodeObject对象中.每一个名字空间都对应着一个PyCodeObject对象. typedef struct { PyObject_HEAD int co_argcount; /* #ar…
系统:win10 手头有个python模块,是用C写的,想编译安装就需要让python调用C编译器.直接编译发现使用的是vc9编译,不支持C99标准(两个槽点:为啥VS2008都还不支持C99?手头这个C代码为啥不好好写?) anyway,此时两个想法,一个是改C源码,另一个是自行用VS2013编译一个python.事后证明第一个想法简单容易..第二个想法实际试过之后,感觉难度很大,水很深,最后也没有淌出这浑水,简单记录下过程. ==== 分割线 ==== 因为现在(2016年11月4日)pyt…
前两个周末写了<手写PHP转Python编译器>的词法,语法分析部分,上个周末卡文了. 访问器部分写了两次都不满意,没办法,只好停下来,参考一下Python的实现.我实现的部分正好和Python是一个思路,就是生成CST(Concrete syntax tree)之后,再生成AST.由于我想创(tou)新(lan),所以未没有详细实现AST,而想绕过AST去生成代码.这下有点欲速不达了. 先看看Python执行代码的过程: 1.     Tokenizer进行词法分析,把源程序分解为Token…