一、Python介绍从我开始学习Python时我就决定维护一个经常使用的“窍门”列表。不论何时当我看到一段让我觉得“酷,这样也行!”的代码时(在一个例子中、在StackOverflow、在开源码软件中,等等),我会尝试它直到理解它,然后把它添加到列表中。这篇文章是清理过列表的一部分。如果你是一个有经验的Python程序员,尽管你可能已经知道一些,但你仍能发现一些你不知道的。如果你是一个正在学习Python的C、C++或Java程序员,或者刚开始学习编程,那
系统 2019-09-27 17:47:46 2048
闲来无事,想看看python,网上看了一下教程,好像入门问题不大,那就说干就干。先大概了解一下python的语法。传送门:https://www.runoob.com/python/python-tutorial.html最基础的语法啊,balabala一堆,反正先看下,了解一下。然后就是来搭建一下环境,网上看了一下,linux如何搭建python环境,一看吓一跳,linux本身自带python运行环境。这么刺激的嘛,赶紧打开我的linux,先瞅瞅:终端下
系统 2019-09-27 17:47:45 2048
在任何编程语言中,函数的应用主要出于以下两种情况:1.代码块重复,这时候必须考虑用到函数,降低程序的冗余度2.代码块复杂,这时候可以考虑用到函数,增强程序的可读性当流程足够繁杂时,就要考虑函数,及如何将函数组合在一起。在Python中做函数设计,主要考虑到函数大小、聚合性、耦合性三个方面,这三者应该归结于规划与设计的范畴。高内聚、低耦合则是任何语言函数设计的总体原则。1.如何将任务分解成更有针对性的函数从而导致了聚合性2.如何设计函数间的通信则又涉及到耦合
系统 2019-09-27 17:45:56 2048
心血来潮写了个多线程抓妹子图,虽然代码还是有一些瑕疵,但是还是记录下来,分享给大家。Pic_downloader.py#-*-coding:utf-8-*-"""CreatedonFriAug0717:30:582015@author:Dreace"""importurllib2importsysimporttimeimportosimportrandomfrommultiprocessing.dummyimportPoolasThreadPooltype
系统 2019-09-27 17:38:32 2048
通过下面的步骤让你由浅入深明白装饰器是什么。假定你拥有最基本的Python知识,本文阐述的东西可能对那些在工作中经常接触Python的人有很大的帮助。1、函数(Functions)在Python里,函数是用def关键字后跟一个函数名称和一个可选的参数表列来创建的,可以用关键字return指定返回值。下面让我们创建和调用一个最简单的函数:>>>deffoo():...return1>>>foo()1该函数的函数体(在Python里将就是多行语句)是强制性的并
系统 2019-09-27 17:38:30 2048
什么是twisted?twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其他应用层协议,比如HTTP,SMTP,NNTM,IRC,XMPP/Jabber。非常好的一点是twisted实现和很多应用层的协议,开发人员可以直接只用这些协议的实现。其实要修改Twisted的SSH服务器端实现非常简单。很多时候,开发人员需要实现protocol类。一个Twisted程序由reactor发起的主循环和一些回调
系统 2019-09-27 17:38:27 2048
我们都知道并发(不是并行)编程目前有四种方式,多进程,多线程,异步,和协程。多进程编程在python中有类似C的os.fork,当然还有更高层封装的multiprocessing标准库,在之前写过的python高可用程序设计方法中提供了类似nginx中masterprocess和workerprocess间信号处理的方式,保证了业务进程的退出可以被主进程感知。多线程编程python中有Thread和threading,在linux下所谓的线程,实际上是LW
系统 2019-09-27 17:38:17 2048
JSON编码支持的基本数据类型为None,bool,int,float和str,以及包含这些类型数据的lists,tuples和dictionaries。对于dictionaries,keys需要是字符串类型(字典中任何非字符串类型的key在编码时会先转换为字符串)。为了遵循JSON规范,你应该只编码Python的lists和dictionaries。而且,在web应用程序中,顶层对象被编码为一个字典是一个标准做法。JSON编码的格式对于Python语法而
系统 2019-09-27 17:38:14 2048
我是学习java的,不是专业出身,数学水平不高,技术水平一般,1年工作经验。总觉得java是web的,不涉及到底层技术,含金量不高。想学一下知识,不知道学什么,是继续学习java(深度),还是学习C/C++,还是Linux等(广度)。想通过学习能让自己有个好的发展,好的待遇。在下非常感谢前辈们给的建议,我会认真考虑的。我想不至一条路可以成功,贵在坚持。对于水平一般的程序员,技术要深度还是广度
系统 2019-08-29 23:25:00 2048
得到指定地址上的一个字节或字#defineMEM_B(x)(*((byte*)(x)))#defineMEM_W(x)(*((word*)(x)))求最大值和最小值#defineMAX(x,y)(((x)>(y))?(x):(y))#defineMIN(x,y)(((x)<(y))?(x):(y))得到一个field在结构体(struct)中的偏移量#defineFPOS(type,field)((dword)&((type*)0)->field)得到一个
系统 2019-08-29 22:56:35 2048