05 2020 档案
摘要:#外部文件使用django的models,需要配置django环境 import os if __name__ == '__main__': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "singletablehw.settings") ## im
阅读全文
摘要:#添加书籍 url(r'^add_book/', views.add_book,name='abook'), #name='abook' 别名 # 删除书籍 url(r'^delete_book/(\d+)/', views.delele_book,name='delete_book'), 视图:
阅读全文
摘要:基础方式 # %s format name = 'kelvin' age = 18 msg = '我叫%s,今年%s' %(name,age) msg1 = '我叫{},今年{}'.format(name,age) 进阶方式 # 新特性:格式化输出 name = 'kelvin' age = 18
阅读全文
摘要:简介 数据分析:是把隐藏在一些看似杂乱无章的数据背后的信息提炼出来,总结出所研究对象的内在规律 数据分析三剑客:Numpy,Pandas,Matplotlib NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供
阅读全文
摘要:一、gevent #__author__:Kelvin #date:2020/5/13 13:34 from gevent import monkey monkey.patch_all() import time import gevent def func(): print("start") #
阅读全文
摘要:一、递归锁 # Lock :互斥锁 效率高 # RLock :递归(recursion)锁 效率相对低 在同一个线程中可以被acquire多次,如果想要释放锁,acquire多少次就要release多少次 from threading import RLock def func(i,rlock):
阅读全文
摘要:一、多个线程对同一个数据进行修改 from threading import Thread,Lock n = 0 def add(lock): for i in range(500000): global n with lock: n += 1 def sub(lock): for i in ran
阅读全文
摘要:import time from threading import Thread def son(): while True: print('in son') time.sleep(1) def son2(): for i in range(3): print('in son2 ****') tim
阅读全文
摘要:一、同步代码块 package com.synchronized1; // 买票示例 // 使用同步代码块解决线程安全问题 public class TicketRunnableImp implements Runnable { private int ticket = 100; Object o=
阅读全文
摘要:一、创建自定义线程类继承Thread 自定义线程类代码 package com.demo05; public class MyThread extends Thread { @Override public void run() { for (int i = 0; i < 20; i++) { Sy
阅读全文
摘要:from multiprocessing import Process,Manager,Lock def change_dic(dic,lock): with lock: dic['count'] -= 1 if __name__ == '__main__': # m = Manager() wit
阅读全文
摘要:基于单列集合实现 package com.demo03; import java.util.ArrayList; import java.util.Collections; public class doudizhu { public static void main(String[] args)
阅读全文
摘要:# 进城之间数据隔离 # 进程之间通信(IPC) Inter Process communication # 基于文件 :同一台机器上的多个进程之间通信 # Queue 队列 # 基于socket的文件级别的通信来完成数据传递的 # 基于网络 :同一台机器或者多台机器上的多进程间通信 # 第三方工具
阅读全文
摘要:3:# 抢票示例 import json import time from multiprocessing import Process,Lock def search(i): with open('ticket',encoding='utf-8') as f: ticket = json.load
阅读全文
摘要:#__author__:Kelvin #date:2020/5/10 11:37 import time from multiprocessing import Process def son1(): while True: print('--> in son1') time.sleep(1) de
阅读全文
摘要:服务器端: #__author__:Kelvin #date:2020/5/9 11:35 import socket from multiprocessing import Process def talk(conn): while True: msg = conn.recv(1024).deco
阅读全文
摘要:Scrapy框架的使用 - pySpider - 什么是框架? - 就是一个具有很强通用性且集成了很多功能的项目模板(可以被应用在各种需求中) - scrapy集成好的功能: - 高性能的数据解析操作(xpath) - 高性能的数据下载 - 高性能的持久化存储 - 中间件 - 全栈数据爬取操作 -
阅读全文
摘要:# 抓取梨视频网站的短视频 from lxml import etree import os import requests import re dirName="./videoLibs" if not os.path.exists(dirName): os.mkdir(dirName) url="
阅读全文
摘要:- selenium模块在爬虫中的使用 - 概念:是一个基于浏览器自动化的模块。 - 爬虫之间的关联: - 便捷的捕获到动态加载到的数据。(可见即可得) - 实现模拟登陆 - 环境安装:pip install selenium - 基本使用: - 准备好某一款浏览器的驱动程序:http://chro
阅读全文
摘要:1:强制类型转换数据溢出 2:顺序结构的流程图 3:单if语句的流程图 4:标准if-else语句的流程图 5:扩展if-else语句的流程图 6:for循环流程图
阅读全文
摘要:requests抓取数据报错 - HttpConnectinPool: - 原因: - 1.短时间内发起了高频的请求导致ip被禁 - 2.http连接池中的连接资源被耗尽 - 解决: - 1.代理 - 2.headers中加入Conection:“close” 代理服务器 - 代理:代理服务器,可以
阅读全文
摘要:数据解析 - 数据解析 - 数据解析的作用: - 可以帮助我们实现聚焦爬虫 - 数据解析的实现方式: - 正则 - bs4 - xpath - pyquery - 数据解析的通用原理 - 问题1:聚焦爬虫爬取的数据是存储在哪里的? - 都被存储在了相关的标签之中and相关标签的属性中 - 1.定位标
阅读全文
摘要:requests操作流程分析 - requests作用:模拟浏览器发起请求 - urllib:requests的前身 - requests模块的编码流程: - 指定url - 发起请求: - get(url,params,headers) - post(url,data,headers) - 获取响
阅读全文
摘要:内存管理 与Python对象创建相关的结构体 #define _PyObject_HEAD_EXTRA \ struct _object *_ob_next; \ struct _object *_ob_prev; #define PyObject_HEAD PyObject ob_base; #d
阅读全文
摘要:冒泡排序 思路:从列表第一个元素开始,相邻两个相比较,如果前者比后者大,则交换,使最大的最终交换到列表末尾。 alist = [3, 5, 2, 4, 1, 9] def bubbleSort(alist): for i in range(0, len(alist) - 1): for j in r
阅读全文
摘要:alist = [1, 2, 3, 4, 5, 6, 7, 8] def binarySearch(alist, target): first = 0 last = len(alist) - 1 while first <= last: middle_index = (first + last) /
阅读全文
摘要:# coding:utf8 class Node(): def __init__(self, _item): self.item = _item self.left = None self.right = None class SortTree(): def __init__(self): self
阅读全文
摘要:# coding:utf8 class Node(): def __init__(self, _item): self.item = _item self.left = None self.right = None class Tree(): def __init__(self): self.roo
阅读全文
摘要:# conding:utf8 class Node(): def __init__(self, _item): self.item = _item self.next = None class Link(): def __init__(self): self._head = None def app
阅读全文
摘要:# coding:utf8 class Queue(): def __init__(self): self.items = [] def enqueue(self, item): self.items.insert(0, item) def dequeue(self): return self.it
阅读全文
摘要:# coding:utf8#节点类 class Node(): def __init__(self, _item): self.item = _item self.next = None #链表类 class Link(): def __init__(self): self._head = None
阅读全文
摘要:栈的实现 class Stack(): def __init__(self): self.items = [] def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(
阅读全文