Python

Python按行读取大文件

在工作中遇到一个需求,需要用Python脚本读取一个13G的文件,把每行的记录写入redis。由于机器的内存只有8G,所以不能一次将磁盘上的文件全部读入内存,需要一行一行读取文件。Python按行读取文件主要是使用file.readline方法或者利用file对象的迭代器性质,而file.readlines方法则是一次把所有内容从磁盘读入内存。当内存足够时,file.readlines方法显然会更快,因为磁盘I/O次数更少。下面给出了三种遍历文件每行的方式

系统 2019-09-27 17:56:36 2275

Python

python实现忽略大小写对字符串列表排序的方法

本文实例讲述了python实现忽略大小写对字符串列表排序的方法,是非常实用的技巧。分享给大家供大家参考。具体分析如下:先来看看如下代码:string='''thestirngHasmanylineInTHEfIlejb51net'''list_of_string=string.split()printlist_of_string#将字符串分离开,放入列表中print'*'*50defcase_insensitive_sort(liststring):lis

系统 2019-09-27 17:56:30 2275

Python

python爬虫常用模块

对于一些简单的爬虫,python(基于python3)有更好的第三方库来实现它,且容易上手。Python标准库–logging模块logging模块能够代替print函数的功能,将标准输出到日志文件保存起来,利用loggin模块可以部分替代debugre模块正则表达式sys模块系统相关模块sys.argv(返回一个列表,包含所有的命令行)sys.exit(退出程序)Python标准库–urllib模块urllib.requset.urlioen可以打开HT

系统 2019-09-27 17:56:28 2275

Python

Python性能分析工具Profile

Python性能分析工具Profile代码优化的前提是需要了解性能瓶颈在什么地方,程序运行的主要时间是消耗在哪里,对于比较复杂的代码可以借助一些工具来定位,python内置了丰富的性能分析工具,如profile,cProfile与hotshot等。其中Profiler是python自带的一组程序,能够描述程序运行时候的性能,并提供各种统计帮助用户定位程序的性能瓶颈。Python标准模块提供三种profilers:cProfile,profile以及hots

系统 2019-09-27 17:56:15 2275

Python

python基础之流程控制(3)

1.python语句的分类1.单行代码一行的python代码2.代码块/组:以冒号作为开始,用缩进划分相同作用域,这样的结构称之为代码块,是一个整体。作用域是指作用范围。作用区域,使用了相同的缩进,即有相同的作用域。缩进:一个table距离或者四个空格。注意:代码块/组中严格区分空格和table,不能混合使用,必须只使用一种方式缩进!2.流程控制的分类流程控制:对计算机执行代码的管控就是流程控制。分类:1.顺序结构2.分支结构/选择结构3.循环结构3.顺序

系统 2019-09-27 17:56:11 2275

Python

Python 生成器 generator初步认识

生成器在Python中,使用了yield的函数被称为生成器(generator)。生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。在调用生成器运行的过程中,每次遇到yield时函数会暂停并保存当前所有的运行信息,返回yield的值,并在下一次执行next()方法时从当前位置继续运行。调用一个生成器函数,返回的是一个迭代器对象。列表推导式空间开销大占用内存耗时大,.生成器保存的是算法,而列表保存的计算后的内容,所以同样内容的

系统 2019-09-27 17:56:08 2275

Python

filter用法--Python

filter被称为高阶函数是有道理的。filter(self,/,*args,**kwargs)Docstring:filter(functionorNone,iterable)-->filterobjectReturnaniteratoryieldingthoseitemsofiterableforwhichfunction(item)istrue.IffunctionisNone,returntheitemsthataretrue.从Doc的简单描述可

系统 2019-09-27 17:56:08 2275

Python

python中的*args和**kwargs

python支持可变参数:可以使用*args、**kwargs实现*args是可变的positionalarguments列表,是一个tuple。**kwargs是可变的keywordarguments列表,是一个dict。*args必须位于**kwargs之前,因为positionalarguments必须位于keywordarguments之前。*args、**kwargs的使用:函数定义:是一个将参数pack的过程函数调用:将参数unpack例子:d

系统 2019-09-27 17:55:35 2275

Python

python开发植物大战僵尸游戏

开发思路完整项目地址:https://github.com/371854496/...觉得还OK的话,点下Star,作者不易,thankyou!1.引入需要的模块,配置图片路径,设置界面宽高背景颜色,创建游戏主入口。#1引入需要的模块importpygameimportrandom#1配置图片地址IMAGE_PATH='imgs/'#1设置页面宽高scrrr_width=800scrrr_height=560#1创建控制游戏结束的状态GAMEOVER=Fa

系统 2019-09-27 17:55:28 2275

Python

[Python] Pandas中Dataframe的增删改查及其他常用操作

有一些通用的参数,比如axis=0为行,1为列index=指定行,columns=指定列ascending=False倒序,True顺序找不到代码时候试试会有惊喜行列通用通过标签选择数据df[[...]]df.loc['']df['']df.loc[indexList,columnList]通过位置选择数据df[num]df.iloc[indexList,columnList]通过标签/位置选择数据df.ix[indexList,columnList][i

系统 2019-09-27 17:55:06 2275

Python

python数据预处理之将类别数据转换为数值的方法

在进行python数据分析的时候,首先要进行数据预处理。有时候不得不处理一些非数值类别的数据,嗯,今天要说的就是面对这些数据该如何处理。目前了解到的大概有三种方法:1,通过LabelEncoder来进行快速的转换;2,通过mapping方式,将类别映射为数值。不过这种方法适用范围有限;3,通过get_dummies方法来转换。importpandasaspdfromioimportStringIOcsv_data='''A,B,C,D1,2,3,45,6,

系统 2019-09-27 17:54:40 2275

Python

python 表达式和语句及for、while循环练习实例

Python中表达式和语句及for、while循环练习1)表达式常用的表达式操作符:x+y,x-yx*y,x/y,x//y,x%y逻辑运算:xory,xandy,notx成员关系运算:xiny,xnotiny对象实例测试:xisy,xnotisy比较运算:xy,x<=y,x>=y,x==y,x!=y位运算:x|y,x&y,x^y,x<>y一元运算:-x,+x,~x:幂运算:x**y索引和分片:x[i],x[i:j],x[i:j:stri

系统 2019-09-27 17:54:38 2275

Python

Python Django 实现简单注册功能过程详解

项目创建略,可参考PythonDjangoVue项目创建。目录结构如下编辑views.pyfromdjango.shortcutsimportrender#Createyourviewshere.fromdjango.httpimportHttpResponsefromdjango.shortcutsimportrenderfromcommon.DBHandleimportDataBaseHandleimporttimedefdjangoHello(req

系统 2019-09-27 17:54:32 2275

Python

Python 缓存机制与 functools.lru_cache

原文链接:https://kuanghy.github.io/2016/04/20/python-cache缓存是一种将定量数据加以保存以备迎合后续请求的处理方式,旨在加快数据的检索速度。在Python的3.2版本中,引入了一个非常优雅的缓存机器,即functool模块中的lru_cache装饰器。lru_cache原型如下:@functools.lru_cache(maxsize=None,typed=False)使用functools模块的lur_ca

系统 2019-09-27 17:53:45 2275

Python

Python用户推荐系统曼哈顿算法实现完整代码

出租车几何或曼哈顿距离(ManhattanDistance)是由十九世纪的赫尔曼・闵可夫斯基所创词汇,是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。图中红线代表曼哈顿距离,绿色代表欧氏距离,也就是直线距离,而蓝色和黄色代表等价的曼哈顿距离。曼哈顿距离――两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|。对于一个具有正南正北、正东正西方向规则布局的城镇街道,从一点到达另一点的距离正

系统 2019-09-27 17:53:07 2275