一、操作系统中相关进程的知识Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下每个子进程的ID,而子进程只需要调用getppid()就可以拿到父进程的I
系统 2019-09-27 17:50:08 1918
本文实例讲述了python读写配置文件操作。分享给大家供大家参考,具体如下:在用编译型语言写程序的时候,很多时候用到配置文件,作为一个约定的规则,一般用ini文件作为配置文件,当然不是绝对的,也可能是XML等文件。配置文件是配置的参数是在程序启动,或运行时需要的,作为编译型语言,几乎都会用到,但python是动态语言。动态语言的一大特性是解析执行的。所以很多情况下需要配置的参数,通常会被直接写在脚本里。一个常用的做法,就是单独用一个文件来作为配置文件,比如
系统 2019-09-27 17:49:52 1918
一、写在前面前几天在微信上看到这样一篇文章,链接为:https://mp.weixin.qq.com/s/rl6Sgv3uk_IpoFAx6cWa8w,在这篇文章中,有这样一段话,吸引了我的注意:在Linux中ls是一个使用频率非常高的命令了,可选的参数也有很多,算是一条不得不掌握的命令。Python作为一门简单易学的语言,被很多人认为是不需要认真学的,或者只是随便调个库就行了,那可就真是小瞧Python了。那这次我就要试着用Python来实现一下Linu
系统 2019-09-27 17:49:51 1918
忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串。相信不少同学会有同感。几乎任何一种编程语言,都把字符串列为最基础和不可或缺的数据类型。而拼接字符串是必备的一种技能。今天,我跟大家一起来学习Python拼接字符串的七种方式。1、来自C语言的%方式print('%s%s'%('Hello','world'))>>>Helloworld%号格式化字符串的方式继承自古老的C语言,这在很多编程语言都有类似的实现。上例的%s是一个占位符
系统 2019-09-27 17:49:38 1918
关于我一个有思想的程序猿,终身学习实践者,目前在一个创业团队任teamlead,技术栈涉及Android、Python、Java和Go,这个也是我们团队的主要技术栈。Github:https://github.com/hylinux1024微信公众号:终身开发者(angrycode)在前一篇《一文彻底搞懂Python可迭代(Iterable)、迭代器(Iterator)和生成器(Generator)的概念》的文中,知道生成器(Generator)可由以下两
系统 2019-09-27 17:49:37 1918
文章作者:Tyan博客:noahsnail.com|CSDN|简书1.引言众所周知,Python语言简单、易学、开源、具有丰富的库,Python的第一个编译器是用C语言实现的。但Python的缺点也非常明显,最让人诟病的就是Python的性能问题。因此,为了提高程序的运行效率,通常会将程序的关键部分使用C或C++重写,编译成动态链接库,然后在Python(CPython)中进行调用。运行环境:Ubuntu16.04、Python2.7、Python3.5。
系统 2019-09-27 17:49:17 1918
1.创建一个边界值为1而内部都是0的数组,图例如下:[提示:]解此题可以先把所有值都设置为1,这是大正方形;其次,把边界除外小正方形全部设置为0。本题用到numpy的切片原理。多维数组同样遵循x[start:stop:step]的原理。[1.1.1.1.1.1.1.1.1.1.][1.0.0.0.0.0.0.0.0.1.][1.0.0.0.0.0.0.0.0.1.][1.0.0.0.0.0.0.0.0.1.][1.0.0.0.0.0.0.0.0.1.][1
系统 2019-09-27 17:49:14 1918
脚本如下:fromopenpyxlimportload_workbookworkbook=load_workbook(u'/tmp/test.xlsx')#找到需要xlsx文件的位置booksheet=workbook.active#获取当前活跃的sheet,默认是第一个sheet#如果想获取别的sheet页采取下面这种方式,先获取所有sheet页名,在通过指定那一页。#sheets=workbook.get_sheet_names()#从名称获取shee
系统 2019-09-27 17:48:59 1918
1.何时使用线程池系统启动一个新线程的成本是比较高的,因为它涉及与操作系统的交互。在这种情形下,使用线程池可以很好地提升性能;尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池。线程池在系统启动时即创建大量空闲的线程,程序只要将一个函数提交给线程池,线程池就会启动一个空闲的线程来执行它。当该函数执行结束后,该线程并不会死亡,而是再次返回到线程池中变成空闲状态,等待执行下一个函数。使用线程池可以有效地控制系统中并发线程的数量。当系统中包含有
系统 2019-09-27 17:48:26 1918
1.初识python(python2.7)1)python既是面向过程的又可以是面向对象的。面向过程:代码由可以重用的函数构建;面向过程:代码由数据和功能组合成的对象构建。2)python是一种解释型语言,与java等编译型语言不同,在执行python程序的过程中无需编译器进行编译和链接,既在执行python代码时减少了编译环节,解释器会将源代码转换成字节码再翻译给计算机执行。3)python是一种交互式语言:在python的提示符>>>后面直接执行代码。
系统 2019-09-27 17:48:00 1918