Python
无缘浪子党
愿你出走半生,归来仍是少年
展开
-
用Python实现AES加密和解密
一、前言AES,高级加密标准(英语:Advanced Encryption Standard)。是用来替代DES,目前比较流行的加密算法。它是一种对称加密算法,与上一篇博文提到过的RSA非对称算法不同,AES只有一个密钥,这个密钥既用来加密,也用于解密。AES只是个基本算法,实现AES有几种模式,主要有ECB、CBC、CFB和OFB这几种(其实还有个CTR):1.ECB模式(电子密码本模式:Electronic codebook)ECB是最简单的块密码加密模式,加密前根据加密块大小(如AE转载 2020-10-22 17:29:13 · 7521 阅读 · 2 评论 -
Pandas-DataFrame基础知识点总结
1、DataFrame的创建DataFrame是一种表格型数据结构,它含有一组有序的列,每列可以是不同的值。DataFrame既有行索引,也有列索引,它可以看作是由Series组成的字典,不过这些Series公用一个索引。DataFrame的创建有多种方式,不过最重要的还是根据dict进行创建,以及读取csv或者txt文件来创建。这里主要介绍这两种方式。根据字典创建data = { 'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],转载 2020-06-17 14:26:54 · 380 阅读 · 0 评论 -
python argparse用法总结
1. argparse介绍是python的一个命令行解析包,非常编写可读性非常好的程序2. 基本用法prog.py是我在linux下测试argparse的文件,放在/tmp目录下,其内容如下:#!/usr/bin/env python# encoding: utf-8import argparseparser = argparse.ArgumentParser()parser.pars...转载 2018-04-19 20:02:30 · 128 阅读 · 0 评论 -
robot remote server使用
robotremoteserver 是什么? Python Remote Server for Robot Framework 下载地址:https://pypi.python.org/pypi/robotremoteserver/ robotremoteserver是一种远程库接口技术(remote library interface)。其实,通过这两天的使用,我的理解它...转载 2018-04-19 21:02:01 · 2205 阅读 · 1 评论 -
Python yield 使用浅析
您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。如何生成斐波那契數列斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐波那契數列的前 N 个数是一...转载 2019-01-10 22:58:46 · 150 阅读 · 0 评论 -
如何将Python字典转换成XML
from xml.etree.ElementTree import Element, SubElement, tostringfrom xml.dom.minidom import parseStringdef main(): BOOKs = { '001': { 'title' : 'Name1', 'edition...原创 2019-01-05 21:03:36 · 3429 阅读 · 0 评论 -
如何将Python字典转换成Json
from distutils.log import warn as printf #应对python2和3的print的差异from json import dumps from pprint import pprint #pprint.pprint()用来美观地输出Python对象 BOOKs = { '001': { 'title': 'name1', ...原创 2019-01-05 21:43:43 · 6239 阅读 · 0 评论 -
将数据转换为CSV格式
import csvfrom distutils.log import warn as printfDATA = ( (9, 'Web Clients and Servers', 'base64, urllib'), (10, 'Web Programming: CGI & WSGI', 'cgi, time, wsgiref'), (13, 'Web Se...原创 2019-01-05 22:16:53 · 4036 阅读 · 0 评论 -
将数据转成CSV格式
import csvfrom distutils.log import warn as printfDATA = ( (9, 'Web Clients and Servers', 'base64, urllib'), (10, 'Web Programming: CGI & WSGI', 'cgi, time, wsgiref'), (13, 'Web Se...原创 2019-01-05 22:21:58 · 1205 阅读 · 0 评论 -
Python正则表达式概述
一、正则表达式为高级的文本模式匹配、抽取、与/或文本形式的搜索和替换功能提供了基础。简单地说,正则表达式regex是一些字符和特殊符号组成的字符串,它们描述了模式的重复或者表述多个字符,于是正则表达式能按照某种模式匹配一系列有相似特征的字符串。二、特殊符号和字符常见表达式符号和特殊字符 literal 匹配文本字符串的字面值literal foo re1|re2 匹...原创 2019-01-06 09:42:54 · 215 阅读 · 0 评论 -
Python多线程
多任务可以由多进程完成,也可以由一个进程内的多线程完成。我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程。由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程。Python的标准库提供了两个模块:_thread和threading,_thread是低级...转载 2019-01-08 22:37:45 · 134 阅读 · 0 评论 -
Python Socket编程
创建TCP服务器代码,#coding = utf-8from socket import *from time import ctimeHOST=''PORT=21567BUFSIZ=1024ADDR=(HOST, PORT)tcpSerSock=socket(AF_INET, SOCK_STREAM) #分配了TCP服务器套接字(tcpSerSock),紧随其后的是将套接...原创 2019-01-08 23:42:06 · 169 阅读 · 0 评论 -
Python迭代器
一、迭代器正式的说法是,一个实现了__iter__方法的对象是可迭代的,一个实现了next方法的对象则是迭代器。__iter__方法会返回一个迭代器,所谓的迭代器就是具有next方法(这个方法在调用时不用任何参数)的对象。在调用next方法时候,迭代器会返回它的下一个值。看一个不适用列表的例子,class Fibs: def __init__(self): s...原创 2019-01-09 22:42:31 · 160 阅读 · 0 评论 -
Python生成器
一、生成器生成器是一种用普通的函数语法定义的迭代器。任何包含yield语句的函数成为生成器。nested=[[1, 2], [3, 4], [5]]def flatten(nested): for sublist in nested: for element in sublist: yield elementfor num in fl...原创 2019-01-09 23:32:34 · 149 阅读 · 0 评论 -
py12306 购票助手
传送门 https://github.com/pjialin/py12306/py12306 购票助手分布式,多账号,多任务购票前言今年回家的票明显要难买很多,早早就答应了父母今年的票没问题,到现在一张票没买到,虽然家里已经订了汽车票,让我不用操心,但是想想他们一行还有小孩,心还是很伤的。 这段时间从 12306Bypass 到 testerSunshine 大佬写的 12306,...转载 2019-01-15 23:11:06 · 1548 阅读 · 0 评论 -
python2.7安装pip
pip是用来方便地管理Python的第三方包的,由于此前玩Python仅仅是浅尝辄止,用的是python(x,y),但是这里并不代表你想用什么包都能从里面找到的,所以我把python(x,y)卸了,然后重新装了个Python2.7.5,准备尝试一下用pip来下载想要的包。不过pip也有一个麻烦之处,如果电脑不能联网怎么办?之后再考虑这个问题,先在此记录一下我是如何安装pip的。本文参考百度...转载 2019-05-27 10:40:14 · 71104 阅读 · 3 评论 -
Python Socket编程详细介绍
Python Socket 编程详细介绍Python 提供了两个基本的 socket 模块:Socket 它提供了标准的BSD Socket API。SocketServer 它提供了服务器重心,可以简化网络服务器的开发。下面讲解下 Socket模块功能。Socket 类型套接字格式:socket(family, type[,protocal]) 使用给定的套接族,套接字类型,协议编号(默认为0)...转载 2018-04-19 19:58:21 · 730 阅读 · 0 评论 -
python使用SAX解析xml
什么是XML?XML 指可扩展标记语言(eXtensible Markup Language)。 你可以通过本站学习XML教程XML 被设计用来传输和存储数据。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。python对XML的解析常见的XML编程接口有DOM和SAX,这两...转载 2018-04-19 19:21:02 · 2379 阅读 · 0 评论 -
python中if __name__ == '__main__': 的解析
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__。一个模块的 __name__ 的值取决于您如何应用模块。如果 import 一个模块,那么模块__name__ 的值通常为模块文件名,不带路径或者文件扩展名。但是您也可以像一个标准的转载 2017-05-22 11:39:15 · 169 阅读 · 0 评论 -
__all__暴露接口
Python 可以在模块级别暴露接口:__all__ = ["foo", "bar"]很多时候这么做还是很有好处的……提供了哪些是公开接口的约定不像 Ruby 或者 Java,Python 没有语言原生的可见性控制,而是靠一套需要大家自觉遵守的”约定“下工作。比如下划线开头的应该对外部不可见。同样,__all__ 也是对于模块公开接口的一种约定,比起下划线,_转载 2017-05-22 13:16:55 · 405 阅读 · 0 评论 -
Python strip() 和split() 函数
1 Python strip()函数 介绍函数原型声明:s为字符串,rm为要删除的字符序列s.strip(rm) 删除s字符串中开头、结尾处,位于 rm删除序列的字符s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字符s.rstrip(rm) 删除s字符串中结尾处,位于 rm删除序列的字符注意:(1)当rm为空时,默认删转载 2017-05-22 14:29:05 · 1882 阅读 · 1 评论 -
python中的三个读read(),readline()和readlines()
我们谈到“文本处理”时,我们通常是指处理的内容。Python 将文本文件的内容读入可以操作的字符串变量非常容易。文件对象提供了三个“读”方法: .read()、.readline() 和 .readlines()。每种方法可以接受一个变量以限制每次读取的数据量,但它们通常不使用变量。 .read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。然而 .read() 生成文件内容转载 2017-05-22 16:32:38 · 578 阅读 · 0 评论 -
Python - 通过requests实现腾讯新闻抓取爬虫
最近也是学习了一些爬虫方面的知识。以我自己的理解,通常我们用浏览器查看网页时,是通过浏览器向服务器发送请求,然后服务器响应以后返回一些代码数据,再经过浏览器解析后呈现出来。而爬虫则是通过程序向服务器发送请求,并且将服务器返回的信息,通过一些处理后,就能得到我们想要的数据了。以下是前段时间我用python写的一个爬取TX新闻标题及其网址的一个简单爬虫:首先需要用到python中r转载 2017-06-02 15:01:34 · 11890 阅读 · 5 评论 -
使用python实现排序算法(Insertion Sort)
所谓排序算法,就是按序列中数据值的大小,进行递增或递减排列的操作。插入排序(Insertion Sort)是众多排序算法中的一种。插入排序算法通过对未排序数据序列中的每一个数据从后到前进行反复的对比,找到数据在序列中相应的位置。算法描述:插入排序算法简单直观,具体步骤及描述如下:1,将未排序的数据序列分为已排序和未排序两部分,初始状态中默认序列中的第一个元素为已排序转载 2017-07-13 14:43:31 · 446 阅读 · 0 评论 -
Python面向对象
Python 面向对象Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程。接下来我们先来转载 2017-08-25 21:37:18 · 198 阅读 · 0 评论 -
Python XML解析
Python XML解析什么是XML?XML 指可扩展标记语言(eXtensible Markup Language)。 你可以通过本站学习XML教程XML 被设计用来传输和存储数据。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。转载 2017-08-26 14:39:14 · 214 阅读 · 0 评论 -
Python解析JSON
Python JSON本章节我们将为大家介绍如何使用 Python 语言来编码和解码 JSON 对象。JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写。JSON 函数使用 JSON 函数需要导入 json 库:import json。函数描述json.dum转载 2017-08-26 15:10:05 · 289 阅读 · 0 评论 -
Python正则表达式指南
1. 正则表达式基础1.1. 简单介绍正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语转载 2017-08-28 14:15:01 · 229 阅读 · 0 评论 -
python super讲解
一、问题的发现与提出 在Python类的方法(method)中,要调用父类的某个方法,在Python 2.2以前,通常的写法如代码段1: 代码段1:class A: def __init__(self): print "enter A" print "leave A" class B(A): def __init__(self):转载 2017-08-28 19:35:05 · 242 阅读 · 0 评论 -
python知识
Python语言特性1 Python的函数参数传递看两个例子:a = 1def fun(a): a = 2fun(a)print a # 1a = []def fun(a): a.append(1)fun(a)print a # [1]所有的变量都可以理解是内存中一个对象的“引用”,或者,也可以看似c中void*的转载 2017-08-28 19:48:55 · 1125 阅读 · 0 评论 -
python面试题
引言想找一份Python开发工作吗?那你很可能得证明自己知道如何使用Python。下面这些问题涉及了与Python相关的许多技能,问题的关注点主要是语言本身,不是某个特定的包或模块。每一个问题都可以扩充为一个教程,如果可能的话。某些问题甚至会涉及多个领域。我之前还没有出过和这些题目一样难的面试题,如果你能轻松地回答出来的话,赶紧去找份工作吧!问题1到底什么是Pyth转载 2017-08-28 19:54:43 · 420 阅读 · 0 评论 -
python中Split函数用法
描述Python split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串语法split()方法语法:str.split(str="", num=string.count(str)).参数str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。num -- 分割次数。转载 2017-08-31 15:57:28 · 1059 阅读 · 0 评论 -
Python控制鼠标和键盘-PyAutoGUI
PyAutoGUI是用Python写的一个模块,使用它可以控制鼠标和键盘。利用它可以实现自动化任务,再也不用担心有重复枯燥的任务了。pyautogui模块的功能:移动鼠标、点击左右键和滚轮发送虚拟按键# 安装pyautogui这个模块支持Windows, Mac OS X 和 Linux。根据系统不同,你可能需要安装一些依赖。Linux系统(Debian系列):12345$ sudo apt-ge...转载 2018-04-19 19:19:58 · 30302 阅读 · 4 评论 -
Python __init__.py 作用详解
__init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件。这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入。# package转载 2017-05-23 17:00:44 · 427 阅读 · 0 评论