搜索到与相关的文章
Python

对比 C++ 和 Python,谈谈指针与引用

作者|樱雨楼引言指针(Pointer)是C、C++以及Java、Go等语言的一个非常核心且重要的概念,而引用(Reference)是在指针的基础上构建出的一个同样重要的概念。指针对于任何一个编程语言而言都是必须且重要的,虽然Python对指针这一概念进行了刻意的模糊与限制,但指针对于Python而言依然是一个必须进行深入讨论的话题。本文基于C++与Python,讨论了Python中与指针及引用相关的一些行为。什么是指针?为什么需要指针?指针有两重含义:(1

系统 2019-09-27 17:48:41 2423

Python

vim配置python

一:背景希望将vim配置成一个轻便的类pythonIDE环境二:实验环境CentOS7vim7.3+三:实验步骤准备工作(1).centos默认安装了vim。可以使用vim--version检查已经安装的vim相关信息(2).需要在(1)中显示出的信息里检查vim版本是否高于7.3,且‘+python’显示在信息中,‘+python’表示支持python,‘-python’表示不支持python安装vim拓展功能(1).安装Vundle,作为vim拓展功能

系统 2019-09-27 17:47:45 2423

Python

详解如何减少python内存的消耗

Python打算删除大量涉及像C和C++语言那样的复杂内存管理。当对象离开范围,就会被自动垃圾收集器回收。然而,对于由Python开发的大型且长期运行的系统来说,内存管理是不容小觑的事情。在这篇博客中,我将会分享关于减少Python内存消耗的方法和分析导致内存消耗/膨胀根源的问题。这些都是从实际操作中总结的经验,我们正在构建DatosIO的RecoverX分布式备份和恢复平台,这里主要要介绍的是在Python(在C++,Java和bash中也有一些类似的组

系统 2019-09-27 17:47:29 2423

Python

Python 多线程其他属性以及继承Thread类详解

一、线程常用属性1.threading.currentThread:返回当前线程变量2.threading.enumerate:返回一个包含正在运行的线程的list,正在运行的线程指的是线程启动后,结束前的状态3.threading.activeCount:返回正在运行的线程数量,效果跟len(threading.enumer)一样4.thr.setName:给线程设置名字5.thr.getName:得到线程的名字。举例:mport_threadasthr

系统 2019-09-27 17:45:57 2423

Python

Python优化技巧之利用ctypes提高执行速度

首先给大家分享一个个人在使用python的ctypes调用c库的时候遇到的一个小坑这次出问题的地方是一个C函数,返回值是malloc生成的字符串地址。平常使用也没问题,也用了有段时间,没发现什么异常。这次在测试中,发现使用这个过程会出现“段错误”,造成程序退出了。经过排查,确定问题原因是C函数的返回值问题,ctypes默认的函数返回类型是int类型。需要在使用中设置返回类型,例如:func.restype=c_char_p下面我们就来详细探讨下ctypes

系统 2019-09-27 17:38:19 2423

Python

基于Python实现对PDF文件的OCR识别

最近在做一个项目的时候,需要将PDF文件作为输入,从中输出文本,然后将文本存入数据库中。为此,我找寻了很久的解决方案,最终才确定使用tesseract。所以不要浪费时间了,我们开始吧。1.安装tesseract在不同的系统中安装tesseract非常容易。为了简便,我们以Ubuntu为例。在Ubuntu中你仅仅需要运行以下命令:这将会安装支持3种不同语言的tesseract。2.安装PyOCR现在我们还需要安装tesseract的Python接口。幸运的是

系统 2019-09-27 17:37:44 2423

Android

Android进阶:AIDL实现IPC使用详解

使用AIDL设计远程接口(DesigningaRemoteInterfaceUsingAIDL)由于每个应用程序都运行在自己的进程空间,并且可以从应用程序UI运行另一个服务进程,而且经常会在不同的进程间传递对象。在Android平台,一个进程通常不能访问另一个进程的内存空间,所以要想对话,需要将对象分解成操作系统可以理解的基本单元,并且有序的通过进程边界。通过代码来实现这个数据传输过程是冗长乏味的,Android提供了AIDL工具来处理这项工作。AIDL(

系统 2019-08-29 23:50:47 2423

编程技术

Ext2.0 form使用实例

Ext2.0的form不单增加了时间输入控件、隐藏输入控件,还修改了创建方法,通过formpanel代替了原来form,column也根据新的布局定义更新了定义方式。总体来说,定义一个form更简单便捷了。本文将通过一个实例介绍一下2.0的form的创建以及其大部分控件的使用方法,因水平有限,错漏难免,忘大家多多谅解!我们先来看看我们将要设计的form的情况:

编程技术

Hibernate加载其数据库配置

Hibernate加载其配置文件hibernate.properties和hibernate.cfg.xml,常用xml文件比较直观,方便管理,Hibernate是一个流行的开源对象关系映射工具,方便连接不同数据库,更换数据库,只要修改Hibernate配置文件,大度减少项目的维护。完整的配置如下:

系统 2019-08-29 22:49:59 2423