编程技术

异步获取已安装程序列表(PackageManager+Async

不是异步的例子,显然有个延迟。packagecom.ql.app;importjava.util.ArrayList;importjava.util.List;importandroid.app.Activity;importandroid.content.Context;importandroid.content.Intent;importandroid.content.pm.PackageManager;importandroid.content.pm

系统 2019-08-29 22:18:15 2153

编程技术

我们应当怎样做需求分析:原文分析法

原文分析法(TextualAnalysis),是在用例说明与流程分析的基础上进行的业务领域分析,是一项在需求研讨会后整理和分析需求的工作。当我们完成了用例图的绘制,为每个用例编写出用例说明以后,原文分析的工作就可以开始了。要讲解原文分析,我们还是用一个实例更简单明了:这是一个实际项目的用例说明。在进行原文分析的时候,我们首先要做的事情就是对用例说明中事件流部分的文字描述,提取其中的名词。在这个实例中都有些什么名词呢?这些名词我在用例中用蓝色标注了出来,经过

系统 2019-08-29 21:59:10 2153

编程技术

大话重构连载11:小步快跑是这样玩的

说了那么多,相信你对小步快跑的概念有了一个初步的印象,但理解还不是很深。让我们来看一看一个实际工作中的例子,来亲身感受一下什么是大布局,什么是大设计,什么是小设计。还是回到前面那个HelloWorld的例子,起初的需求总是简单而清晰的。当用户登录一个网站时,网站往往需要给用户打一个招呼:“hi,XXX!”。同时,如果此时是上午则显示“Goodmorning!”,如果是下午则显示“Goodafternoon!”,除此显示“Goodnight!”。对于这样一个

系统 2019-08-29 21:59:04 2153

Python

python 读写文件 r r+ w w+ a a+

模式参数的说明:r:以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。r+:打开一个文件用于读写。文件指针将会放在文件的开头。w:打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。w+:打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。a:打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。

系统 2019-09-27 17:52:46 2152

Python

Python Web Flask源码解读(四)——全局变量

关于我一个有思想的程序猿,终身学习实践者,目前在一个创业团队任teamlead,技术栈涉及Android、Python、Java和Go,这个也是我们团队的主要技术栈。Github:https://github.com/hylinux1024微信公众号:终身开发者(angrycode)Flask中全局变量有current_app、request、g和session。不过需要注意的是虽然标题是写着全局变量,但实际上这些变量都跟当前请求的上下文环境有关,下面一起

系统 2019-09-27 17:52:41 2152

Python

Python列表对象实现原理详解

Python中的列表基于PyListObject实现,列表支持元素的插入、删除、更新操作,因此PyListObject是一个变长对象(列表的长度随着元素的增加和删除而变长和变短),同时它还是一个可变对象(列表中的元素根据列表的操作而发生变化,内存大小动态的变化),PyListObject的定义:typedefstruct{#列表对象引用计数intob_refcnt;#列表类型对象struct_typeobject*ob_type;#列表元素的长度intob

系统 2019-09-27 17:52:11 2152

Python

利用python实现汉字转拼音的2种方法

前言在浏览博客时,偶然看到了用python将汉字转为拼音的第三方包,但是在实现的过程中发现一些参数已经更新,现在将两种方法记录一下。xpinyin在一些博客中看到,如果要转化成带音节的拼音,需要传递参数,‘show_tone_marks=True',但我在实际使用时发现,已经没有这个参数了,变成了tone_marks,其它的参数和使用方法,一看就明白了,写的很清楚。看下源码:classPinyin(object):"""translatechineseha

系统 2019-09-27 17:46:05 2152

Python

python调用新浪微博API项目实践

因为最近接触到调用新浪微博开放接口的项目,所以就想试试用python调用微博API。SDK下载地址:http://open.weibo.com/wiki/SDK代码不多十几K,完全可以看懂。有微博账号可以新建一个APP,然后就可以得到appkey和appsecret,这个是APP获得OAuth2.0授权所必须的。了解OAuth2可以查看链接新浪微博的说明。OAuth2授权参数除了需要appkey和appsecret还需要网站回调地址redirect_uri

系统 2019-09-27 17:47:08 2151

Python

使用Python对IP进行转换的一些操作技巧小结

PythonSocket模块中包含一些有用IP转换函数,说明如下:socket.ntohl(x)//类似于C语言的ntohl(x)把32位正整数从网络序转换成主机字节序。socket.ntohs(x)//类似于C语言的ntohs(x)把16位正整数从网络序转换成主机字节序。socket.htonl(x)//类似于C语言的htonl(x)把32位正整数从主机字节序转换成网络序。socket.htons(x)//类似于C语言的htons(x)把16位正整数从主

系统 2019-09-27 17:46:35 2151

Python

Python常用模块用法分析

本文较为详细的讲述了Python中常用的模块,分享给大家便于大家查阅参考之用。具体如下:1.内置模块(不用import就可以直接使用)常用内置函数:help(obj)在线帮助,obj可是任何类型callable(obj)查看一个obj是不是可以像函数一样调用repr(obj)得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝eval_r(str)表示合法的python表达式,返回这个表达式dir(obj)查看obj的namespace中

系统 2019-09-27 17:45:32 2151

Python

Python序列操作之进阶篇

简介Python的序列(sequence)通常指一个可迭代的容器,容器中可以存放任意类型的元素。列表和元组这两种数据类型是最常被用到的序列,python内建序列有六种,除了刚刚有说过的两种类型之外,还有字符串、Unicode字符串、buffer对像和最后一种xrange对像,这几种都是不常使用的。本文讲解了列表推导式、切片命名、列表元素排序、列表元素分组的使用方法。学习了Python基本的列表操作后,学习这些进阶的操作,让我们写出的代码更加优雅简洁和pyt

系统 2019-09-27 17:38:41 2151

Python

详解Python的Django框架中Manager方法的使用

在语句Book.objects.all()中,objects是一个特殊的属性,需要通过它查询数据库。在第5章,我们只是简要地说这是模块的manager。现在是时候深入了解managers是什么和如何使用了。总之,模块manager是一个对象,Django模块通过它进行数据库查询。每个Django模块至少有一个manager,你可以创建自定义manager以定制数据库访问。下面是你创建自定义manager的两个原因:增加额外的manager方法,和/或修ma

系统 2019-09-27 17:37:39 2151

编程技术

initrd 机制解析

Linux的initrd技术是一个非常普遍使用的机制,linux2.6内核的initrd的文件格式由原来的文件系统镜像文件转变成了cpio格式,变化不仅反映在文件格式上,linux内核对这两种格式的initrd的处理有着截然的不同。本文首先介绍了什么是initrd技术,然后分别介绍了Linux2.4内核和2.6内核的initrd的处理流程。最后通过对Linux2.6内核的initrd处理部分代码的分析,使读者可以对initrd技术有一个全面的认识。为了更好

系统 2019-08-29 23:52:14 2151

编程技术

EJB容器模型的WebService服务

---WEB服务WEB服务市一种分布式技术,它与EJB最大的不同是,WEB服务属于行业规范,可以跨平台及语言.而EJB属于java平台规范.理论上可以跨平台,但是实现起来比较复杂.所以其应用范围局限了java平台.看上去是竞争关系,其实不是WEB服务:偏重这个系统对外提供什么功能.EJB:偏重如何使用这个组件组装这些功能.JavaEE为webservice提供了两种不同的编程模型.EJB容器模型web容器模型下面用最新的JAX-WS2.2.7(JAVAAP

系统 2019-08-29 22:08:43 2151

Python

用 Python 批量把文件复制到另一个文件夹

0前言大概是三个月前,有个人找我说要我帮忙写几行代码,功能是把一个文件夹里面的所有文件拆分成200个文件一个文件夹,很简单的。我理解了之后,觉得还是挺简单的,花了半个小时写出来了,代码也不多,代码和思路都可以分享一下。1环境说明Win10系统下Python3,编译器是Pycharm。需要安装shutil这个第三方库,直接pipinstallshutil就可以了。2代码先导入需要用到的库,os是用来切换路径和创建文件夹的。shutil是用来复制黏贴文件的im

系统 2019-09-27 17:55:16 2150