扫描服务器ip开放端口,用线程池ThreadPoolExecutor,i7的cpu可以开到600个左右现成,大概20s左右扫描完65535个端口,根据电脑配置适当降低线程数#!/usr/local/python3.6.3/bin/python3.6#coding=utf-8importsocketimportdatetimeimportrefromconcurrent.futuresimportThreadPoolExecutor,waitDEBUG=Fa
系统 2019-09-27 17:52:19 1699
闲暇之余,在家里自建了个服务器,因为用的小区宽带,IP位动态分配。域名解析就是个问题,我的域名一般停放在DNSPod下。DNSPod有提供修改的API,就用Python简单的实现了一下动态解析。这样,就不用安装花生壳了。废话不说,看代码:#!/usr/bin/envpython#-*-coding:utf-8-*-importhttplib,urllib,urllib2importtimeimportsys,osimportreimportjsonuser
系统 2019-09-27 17:52:14 1699
Python的字符串的特点Python与C语言,Java语言都不一样,没有单个字符,只有一个有一个字符的字符串。字符串对象不可修改,属于不可变类型字符串和列表,元组都从属于序列这个对象类别。所以序列支持的操作,字符串也支持。用单引号和双引号表示都行,并列的字符串串常量会自动合并,不需要显式的用加号表示。单双引号里面的特殊字符必须用转义序列表示,比如”,',\都需要在前面加个、,但是在三引号里面不需要转义。Python的字符串的支持的基本操作支持序列的操作,
系统 2019-09-27 17:52:13 1699
数据结构作为计算机基础的必修内容,也是很多大型互联网企业面试的必考题。可想而知,它在计算机领域的重要性。然而很多计算机专业的同学,都仅仅是了解数据结构的相关理论,却无法用代码实现各种数据结构。今日整理了一份常见数据结构的Python实现,希望大家能够参考代码,亲自动手通过代码实现各种数据结构,以巩固知识加深理解。以下内容整理于《Python实现各种常用算法》栈classStack(object):def__init__(self,limit=10):sel
系统 2019-09-27 17:52:13 1699
python中eval函数的用法十分的灵活,这里主要介绍一下它的原理和一些使用的场合。下面是从python的官方文档中的解释:Theargumentsareastringandoptionalglobalsandlocals.Ifprovided,globalsmustbeadictionary.Ifprovided,localscanbeanymappingobject.Theexpressionargumentisparsedandevaluateda
系统 2019-09-27 17:52:12 1699
我们首先来看下python的全部代码,大家可以直接复制后测试:#-*-encoding:utf-8-*-importloggingimportwmiimportosimporttimefromConfigParserimportConfigParserimportsmtplibfromemail.mime.textimportMIMETextimportsocketfromdatetimeimportdatetimeimportreimportsysimp
系统 2019-09-27 17:52:12 1699
print("我想打印一个字符串%s"%123)print("我想打印一个字符串",123)print("我想打印一个字符串{}".format(123))这三个输出有什么区别喃?Python中一个数据是否可以迭代(能否使用For)isinstance(需要判断的数据,Iterable)查看返回值,true则可以迭代,false不能迭代。如果创建一个可以迭代的对象?必须实现__iter__()方法在__iter__方法中需要返回一个具有__iter__方法
系统 2019-09-27 17:52:09 1699
文件结构html_downloader.py-下载网页html内容#!/usr/bin/python#-*-coding:UTF-8-*-importurllib2classHtmlDownloader(object):defdownlod(self,url):ifurlisNone:returnNoneresponse=urllib2.urlopen(url)ifresponse.getcode()!=200:returnNonereturnrespon
系统 2019-09-27 17:52:08 1699
在Python3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。但是从Python3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A的后面。不仅如此,从Python3.6开始,下面的三种遍历操作,效率要高于Python3.5之前:forkeyin字典forvaluein字典.values()forkey
系统 2019-09-27 17:52:03 1699
基础版(list方法)#比较占内存w=int(input("输入一个数字还你一个斐波那契数列:"))list_res=[]deflist_n(n):ifn>=3:res=list_n(n-1)+list_n(n-2)else:res=1returnresprint("开始")foriinrange(0,w):list_res.append(list_n(i+1))print(list_res)升级版#比较占内存num=int(input("输入一个数字还你
系统 2019-09-27 17:52:01 1699