随笔分类 -  python高级应用

python开发中遇到的一些问题的解决技巧
摘要:#原创,转载请留言联系 装饰器的本质就是闭包,所以想知道装饰器是什么,首先要理解一下什么是闭包。 闭包 1. 外部函数返回内部函数的引用。2. 内部函数使用外部函数的变量或者参数。 1.outer函数返回inner函数的引用,f1=outer(1),实质就是f1=inner,而且还有,它会传入一个变 阅读全文
posted @ 2018-09-11 16:04 苦瓜爆炒牛肉 阅读(443) 评论(0) 推荐(0)
摘要:转载自:https://www.cnblogs.com/SuKiWX/p/8804974.html GIL是什么 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成可 阅读全文
posted @ 2018-09-10 11:17 苦瓜爆炒牛肉 阅读(274) 评论(0) 推荐(0)
摘要:#原创,转载请留言联系 区别1 import module 引用共享变量时,要使用module.变量名。 而from module import * 直接使用变量名即可 区别2(有点绕) import module方式操作module的变量时,本地不会创建新变量,操作的是目标模块的变量! from 阅读全文
posted @ 2018-09-10 11:12 苦瓜爆炒牛肉 阅读(13936) 评论(0) 推荐(0)
摘要:#转载请联系 假如你在京东工作,你要做的任务就是做一个商品搜索的东西供用户使用。 然后你写出了这么一个程序的雏形。 看似没有什么问题。但是当恶意的人士输了这么一段字符串,就暴露了京东的全部商品了。 '' or 1是什么东西,这么神奇呢?其实道理很简单。你把它拼成完整的SQL语句就发现了。 or 满足 阅读全文
posted @ 2018-09-06 11:04 苦瓜爆炒牛肉 阅读(1006) 评论(0) 推荐(0)
摘要:#转载请联系 在写内容之前,先放一张图,bling~ 这张图算是比较详细的表达出了web开发都需要什么。用户访问网页,就是访问服务器的网页文件。这些网页文件由前端工程师编写的。服务器通常用nginx/apache(LNMP/LAMP)。这时候,用户能浏览到页面了。当用户需要登录时,肯定要核对用户名密 阅读全文
posted @ 2018-09-05 20:35 苦瓜爆炒牛肉 阅读(244) 评论(0) 推荐(0)
摘要:#转载请联系 1.什么是线程? 进程是操作系统分配程序执行资源的单位,而线程是进程的一个实体,是CPU调度和分配的单位。一个进程肯定有一个主线程,我们可以在一个进程里创建多个线程来实现多任务。 2.一个程序实现多任务的方法 如上图所示,实现多任务,我们可以用几种方法。 (1)在主进程里面开启多个子进 阅读全文
posted @ 2018-08-31 17:29 苦瓜爆炒牛肉 阅读(14538) 评论(0) 推荐(4)
摘要:#转载请联系 每当我们打开浏览器浏览网页时,一般都是很简单,输入网址,回车网页就弹出来了。其实里面的工作还是很多的。 首先,我们打开一个网址,例如www.baidu.com。浏览器会发送一个请求报文给百度的服务器,百度的服务器收到你的请求报文,会发一份响应报文回来给你。 这就是一种协议,我们称为ht 阅读全文
posted @ 2018-08-30 16:55 苦瓜爆炒牛肉 阅读(1511) 评论(0) 推荐(0)
摘要:# 原创,转载请联系 1.匹配单个字符 2.匹配多个字符 3.匹配开头结尾 4.匹配分组 这个就稍微有点难度了。 (1) | ,表示匹配任意一个表达式。 示例: 请写出能同时验证163或者126合法邮箱的正则表达式匹配规则:每个邮箱必须有@符号,且@符号之前需有4到20位单词字符) (2) (ab) 阅读全文
posted @ 2018-08-29 22:50 苦瓜爆炒牛肉 阅读(260) 评论(0) 推荐(0)
摘要:#转载请联系 什么是协程呢? 线程包含在进程里面,协程包含在线程里面。协程也是和进程、线程一样,可以实现多任务。协程的切换开销比线程更小,不需要保存和恢复线程的状态。最通俗易懂的说法就是,协程是就是一个可以暂停、可以挂起的函数。 说到可以暂停,可以挂起,我们肯定第一时间想起yield。其实yield 阅读全文
posted @ 2018-08-27 20:32 苦瓜爆炒牛肉 阅读(705) 评论(0) 推荐(0)
摘要:#原创,转载请先联系 在学习生成器之前,必须先了解一下迭代器。因为生成器就是一种特殊的迭代器,而且生成器用起来更加优雅。 迭代器的详解可以参考我的另一篇博文:https://www.cnblogs.com/chichung/p/9537969.html 先说一种比较简单的生成器,通过例子慢慢来体会什 阅读全文
posted @ 2018-08-27 18:50 苦瓜爆炒牛肉 阅读(3543) 评论(0) 推荐(0)
摘要:#原创,转载请先联系 理论性的东西有点枯燥,耐心点看~ 1.迭代是什么? 我们知道可以对list,tuple,dict,str等数据类型使用for...in的循环语法,从其中依次取出数据,这个过程叫做遍历,也叫迭代。迭代是访问集合元素的一种常用的方式。 2.可迭代对象是什么? 简单来说,可以用for 阅读全文
posted @ 2018-08-26 21:27 苦瓜爆炒牛肉 阅读(6947) 评论(0) 推荐(2)
摘要:#原创,转载请联系 假设我们写的一个程序需要运行100个子进程的时候,那么写程序时,不可能循环创建销毁100个进程吧?进程的创建与销毁是很耗系统的资源的。 进程池的作用就体现出来了。 进程池可以控制进程的数量,重复利用进程对象,减少创建和销毁进程的开销。 我是一条分割线 1.创建进程池 创建进程池可 阅读全文
posted @ 2018-08-25 16:10 苦瓜爆炒牛肉 阅读(901) 评论(0) 推荐(0)
摘要:#原创,转载请联系 我们都知道,主进程和子进程之间不能共享全局变量。那么他们之间怎么实现通信呢? 这就需要用到Queue(队列)了。 1.队列的简单介绍: 队列是常见的数据结构,采用先进先出的原则。从队列的尾部存数据,从队列的头部取数据。 2.怎么创建一个队列: 括号里面可以传进去一个参数,表示队列 阅读全文
posted @ 2018-08-25 14:31 苦瓜爆炒牛肉 阅读(2975) 评论(0) 推荐(0)
摘要:#原创,转载请联系 在开始之前,我们要知道什么是进程。道理很简单,你平时电脑打开QQ客户端,就是一个进程。再打开一个QQ客户端,又是一个进程。那么,在python中如何用一篇代码就可以开启几个进程呢?通过一个简单的例子来演示: 可以看到子进程对象是由multiprocessing模块中的Proces 阅读全文
posted @ 2018-08-25 10:54 苦瓜爆炒牛肉 阅读(3408) 评论(0) 推荐(1)
摘要:"""假设开设了一门课程,并决定在期末的考试成绩中去掉最高分和最低分, 只对中间剩下的成绩做平均统计""" from functools import reduce def drop_first_last(grade): grade.sort() first,*middle,last = grade a = reduce(lambda i,j:i+j,middle) ... 阅读全文
posted @ 2018-08-15 15:15 苦瓜爆炒牛肉 阅读(180) 评论(0) 推荐(0)
摘要:warning:如果元素不匹配,将得到错误提示 阅读全文
posted @ 2018-08-15 14:57 苦瓜爆炒牛肉 阅读(128) 评论(0) 推荐(0)