一直对动态语言的的method obj和function obj感到困惑:
今天看了一个较好的区分介绍:
A function is a piece of code that is called by name. It can be passed data to operate on (ie. the parameters) and can optionally return data (the return value).
All data that is passed to a function is explicitly passed.
A method is a piece of code that is called by name that is associated with an object. In ...
阅读全文
之前刚学习python的时候都是用的python2.7,发觉python2.7总有一些东西概念困扰我,比如str和unicode,还有控制台下处理中文编码的经常报错,让我很是头疼。
这次用写weibo的模拟登陆,索性就直接用了python3.3的标准,发现概念啥的瞬间就清晰了不少,而且urllib.request和urllib.parse貌似比之前的urllib与urllib2更加好使,分类更加清晰,于是就下定决心迁移到python3.3上来,在迁移的过程中也出现了一些问题...
阅读全文
前段时间都是在用java,就没有用python了,发觉很多基本的概念都忘记了,又看了书和api,现在写写这几天的总结:
module
1.模块就是xxx.py这个文件,而模块的名称就是xxx
2.如果我的其他模块需要导入这个模块,首先要import xxx,然后还要让python解释器可以找到这个模块的源代码,这就需要用几个方法告诉python解释器
方法一:sys.path.append() 直接将这个模块的地址加到sys.path中
...
阅读全文
约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到k的那个人被杀掉;他的下一个人又从1开始报数,数到k的那个人又被杀掉;依此规律重复下去,直到圆桌周围的人只剩最后一个。
思路是:当k是1的时候,存活的是最后一个人,当k>=2的时候,构造一个n个元素的循环链表,然后依次杀掉第k个人,留下的最后一个是可以存活的人。代码如下:
class Node():
d...
阅读全文
网上流传着知道创宇的一道爬虫题,虽然一直写着一些实用的爬虫,但真正写出这个一个规范要求的“工具”,还是学到了不少东西。先看下题目:
使用python编写一个网站爬虫程序,支持参数如下:
spider.py -u url -d deep -f logfile -l loglevel(1-5) --testself -thread number --dbfile filepath --key=”HTML5”
参数说明:
-u 指定爬虫开始地址
-d 指定爬虫深度
--thread 指定线程池大小,多线程爬取页面,可选参数,...
阅读全文
目前计算机程序一般会遇到两类I/O:硬盘I/O和网络I/O。我就针对网络I/O的场景分析下python3下进程、线程、协程效率的对比。进程采用multiprocessing.Pool进程池,线程是自己封装的进程池,协程采用gevent的库。用python3自带的urlllib.request和开源的requests做对比。代码如下:
import urllib.request
import requests
import time
import multiprocessing
import threading
import queue
def startTimer():
r...
阅读全文
1.普通界面
/**
*截图功能
*/
-(void)screenShot{
UIGraphicsBeginImageContextWithOptions(CGSizeMake(640, 960), YES, 0);
//设置截屏大小
[[self.view layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
CGImageRef imageRef = viewImage.CGImage;
CGRect rect = CGRectMake(...
阅读全文
【IT168 技术】 Linux chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
Linux chkconfig命令使用语法:
chkconfig [--add] [--del ][--list] [系统服务] 或 chkconfig [--level <等级代号> ] [系统服务] [on/off/reset]
Linux chkconfig命令在没有参数运行时,显示用法。如果加上服务名,那么就检查这个...
阅读全文
【IT168 技术】 1) Linux Proc文件系统,通过对Proc文件系统进行调整,达到性能优化的目的。
2) Linux性能诊断工具,介绍如何使用Linux自带的诊断工具进行性能诊断。
/proc/sys/kernel/优化
1) /proc/sys/kernel/ctrl-alt-del
该文件有一个二进制值,该值控制系统在接收到ctrl+alt+delete按键组合时如何反应。这两个值分别是:
零(0)值,表示捕获ctrl+alt+delete,并将其送至 init 程序;这将允许系统可...
阅读全文