Python
Python使用介绍
老王笔记
目前就职于JD
展开
-
Pyenv离线环境安装Python
pyenv离线安装python原创 2022-08-05 11:44:21 · 902 阅读 · 0 评论 -
离线安装Pyenv
Pyenv内网环境安装原创 2022-08-05 11:26:15 · 667 阅读 · 0 评论 -
Python多线程并发
Python 并发执行for循环原创 2022-04-21 16:38:47 · 2510 阅读 · 0 评论 -
UnicodeEncodeError: ‘latin-1‘ codec can‘t encode characters in position
python3 报错:File "D:\Program Files (x86)\python\lib\http\client.py", line 1230, in putheader values[i] = one_value.encode('latin-1')UnicodeEncodeError: 'latin-1' codec can't encode characters in position 164-172: ordinal not in range(256)查看D:\Prog原创 2021-11-30 17:38:58 · 6021 阅读 · 0 评论 -
python分词并绘制词云
import sqlite3import jieba #分词from matplotlib import pyplot as plt #数据可视化import wordcloudfrom PIL import Image #图片处理import numpy as np #矩阵运算import sqlite3from openpyxl import load_wor.原创 2021-11-05 17:38:00 · 393 阅读 · 0 评论 -
爬虫爬取豆瓣电影top250
最新研究了下爬虫,且将信息保存到EXCEL和sqlite; 代码供参考;代码如下:# This is a sample Python script.# Press Shift+F10 to execute it or replace it with your code.# Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.from bs4 impo原创 2021-09-24 18:51:15 · 2179 阅读 · 5 评论 -
python操作excel 2016
Python操作 Excel97-2003 一般使用xlwt 模块,如果要操作(.xlsx) 的版本,需要使用openpyxl 模块下面示例,打印9X9乘法表import openpyxlworkbook = openpyxl.Workbook() #创建workbook对象worksheet = workbook.create_sheet("sheet1") #创建工作表单for row in range(1, 10): for col in range(1...原创 2021-09-16 18:22:13 · 382 阅读 · 0 评论 -
supervisor安装测试
Supervisor是什么 Supervisor是Python编写的守护进程,有如下功能: 1, 管理其他进程,被管理的进程挂掉的时候,主动拉起;官方地址:http://supervisord.org/introduction.html安装: 我的环境是python 2.6.6(根据不同的版本需要不同的python版本) Centos 6.6 yum install -y supervisor配置 设置开机启动: ...原创 2020-07-13 16:54:12 · 446 阅读 · 0 评论 -
mysql 导出excel格式数据
做为DBA,经常会遇到业务需要抽取数据的情况; 相信大家都遇到过; 使用原生客户端,默认抽取的是txt的数据,查看很是不便,于是乎写了个awk循环用于抽数并转为csv格式; 屡试不爽。但是今天遇到了点问题,又用python重新实现了一遍,再此抛砖引玉,一同分享;1,环境准备:先看下表结构:+-------------------+---------------+------+...原创 2020-01-13 21:25:13 · 620 阅读 · 0 评论 -
python学习笔记--发送一个文件
发送一个文件,要保证文件的完整性,选择tcp连接分为A和B两个程序,A负责接收文件,B负责发送文件接收文件脚本:from socket import *#create socketsock = socket(AF_INET,SOCK_STREAM,0)#BINDsock.bind(('192.168.10.1',8888))#listensock.listen...原创 2019-07-07 13:54:46 · 378 阅读 · 0 评论 -
python 学习--广播小程序
socket其他属性s.fileno() 获取套接字的文件描述符 0, 1, 2 表示标准输入,标准输出,错误输出 *描述符: 每个IO操作,系统都会分配一个不同的证书与之对应,该数即为此IO的描述符s.type 打印套接字的类型s.getsockname() 获取绑定的地址s.getpeername() 打印客户端的地址和端口s.setsockopt(l...原创 2019-07-06 18:28:14 · 277 阅读 · 0 评论 -
python-UDP通信
UDP通信:1, 创建数据包套接字sock sockfd = socket(AF_INET, SOCK_DGRAM)2,绑定端口 bind() ADDR = ('add',8888) sockfd.bind(ADDR)3,收发消息 sendto / recvfrom data,addr = recvfrom(buffersize) 功能: 接收数据包...原创 2019-07-06 16:22:24 · 200 阅读 · 0 评论 -
python 简单聊天交互-v1
python socket学习笔记socket介绍:分类:流式套接字: SOCK_STREAM 传输层基于TCP协议进行通信数据报套接字: SOCK_DGRAM 传输层基于UDP协议进行通信原始套接字: SOCK_RAW 访问底层协议的套接字套接字使用的流程socket --> bind --> listen --> accept --> send/r...原创 2019-07-06 11:41:47 · 470 阅读 · 0 评论 -
python学习笔记--本地套接字
本地套接字:意义: 在linux/unix操作系统下,提供本地进程间通信的一种方式发送端和接收端通过同一个socket通信,发送端发送消息给该文件,接收端从该文件进行接收即可接收端:本地套接字创建流程1, 创建套接字 sockfd = socket(AF_UNIX, SOCK_STREAM)2, 绑定套接字 server_address = '/tmp/msg.s...原创 2019-07-10 18:40:17 · 1252 阅读 · 0 评论 -
MongoDB--Python
MongoDB: 非关系型数据库 文件管理阶段:优点: 可以长期保存 存储大量数据 使用简单缺点: 数据一致性差 数据大的时候,查找修改不便 随着时间增长,冗余度大 数据库管理阶段:优点: 降低冗余度 提高增删改查效率 易扩展 方便调用和自动化处理 缺点:上手相对复杂...原创 2019-06-29 17:17:39 · 670 阅读 · 0 评论 -
多任务编程学习笔记
多任务编程通过应用程序利多个计算机核心达到多任务同时执行的目的,一次来提升程序的执行效率多进程,多线程进程:程序在计算机中一次执行的过程;程序和进程的区别:程序:是一个静态的描述,不占计算机资源进程:是一个动态的过程,占用CPU内存的资源,有一定的生命周期同一个程序,每次执行都是不同的进程,因为分配的计算机资源不同1, 进程的创建流用户空间运行程序,发起进程创建申请...原创 2019-07-13 18:22:23 · 188 阅读 · 0 评论 -
python学习笔记--IO多路复用
IO多路复用:导入包: import selectselect: 支持平台:win/linux/unix r,w,x = select(rlist,wlist,xlist,[timeout]) 功能: 监控IO事件,阻塞等待IO事件发生 rlist: 列表,read list, 监控要等待处理的IO事件 wlist: ...转载 2019-07-07 20:03:09 · 429 阅读 · 0 评论 -
python之http笔记
TCP应用之 http传输网站访问流程1,客户端发起http请求2, 传输层使用tcp协议建立连接,层层打包,将请求内容发送给服务器3,web服务器接收后解析http请求,叫给后端应用程序处理4, 后端应用得到结果,通过web server发给前端http协议介绍用途: 网站中网页的传输和数据传输 也可用作基于http协议的编程传输数据特点: 应用层协议,...转载 2019-07-07 19:21:49 · 163 阅读 · 0 评论 -
python-操作DB
python --mysqlpython3: pymysqlpython2: MySQLdb步骤:1, 建立数据库连接对象 db = pymysql.connect("dbaddress","username","password","dbname",charset = "utf8") 2, 创建游标对象 cursor = db.cursor()3, 使用...原创 2019-06-04 21:33:21 · 2199 阅读 · 0 评论 -
python格式化时间
import datetimeimport osdef get15day(): today = datetime.date.today() day15 = datetime.timedelta(days=15) day_before_15 = today - day15 return day_before_15today = datetime.da...原创 2019-07-16 17:49:29 · 556 阅读 · 0 评论 -
mutiprocessing
mutiprocessing 模块创建进程,标准库1, 需要将事件封装为函数2, 使用mutiprocessing提供的类创建新进程3, 新的进程和对应的函数相关联,进程启动会自动执行函数,完成事件4, 进程回收创建子进程类:mutiprocessing.Process()功能: 创建子进程参数: name: 新进程名,默认名:process-1 ...原创 2019-07-22 18:16:25 · 240 阅读 · 0 评论 -
python--斗地主
''' 模拟斗地主发牌,扑克牌54张: 花色: 黑桃: '\u2660' 梅花: '\u2663' 方块: '\u2665' 红桃: '\u2666' 数值: A2-10JQK 大小王 ...原创 2019-03-24 14:53:14 · 1745 阅读 · 0 评论 -
python正则表达式-re模块
re模块: Python匹配正则表达式时需要导入该模块模块函数:compile(patter, flags = 0): 功能: 获取正则表达式对象 参数: patter:正则表达式 flags: 功能标志位,提供更丰富的匹配(大小写等);默认不添加; 返回值: 正则表达式对象,代表该正则表达式 obj.findall(str...原创 2019-08-23 14:50:26 · 287 阅读 · 0 评论 -
python实现ftp
最近学习python,完成了进程线程的学习,到了用python实现ftp无奈白天要上班,晚上到家十点多了;只能每天晚上坚持学习一两个小时,进展比较缓慢;工作不忙的时候可以挤时间学习下,忙的时候也没办法继续推进;实现功能:dir: 获取文件列表get filename: 下载文件put filename: 上传文件cd: 修改工作目录pwd: 获取文件路径(当前实现...原创 2019-08-22 11:36:41 · 693 阅读 · 0 评论 -
python-GIL
python线程之GILpython的线程bug:GIL: Global Interpreter Lock 全局解释器锁Python --> 支持多线程 --> 同步互斥 --> 加锁 --> 超级锁(把解释器锁住了)--> 在同一时刻,解释器只能解释一个线程 --> 由于 历史原因,大量的python库延用了这种方法--> 导致python多...原创 2019-08-13 10:27:04 · 354 阅读 · 0 评论 -
Python正则表达式
1, 匹配普通字符 'abc' re.findall('abc','abcdefgabc')2, 或 | 元字符: ab|bc 匹配规则:匹配2遍任意一个正则表达式 re.findall('ab|bc','abcdefgbc')3, 元字符 . 匹配规则: 匹配除了换行之外的任意字符 >>> re.findal...原创 2019-08-22 09:33:17 · 192 阅读 · 0 评论 -
python笔记1--线程
线程:thread 线程也是多任务编程的一种方法,可以使用计算机多核资源。 线程是计算机核心分配的最小单位 线程又称为轻量级进程,在创建和删除时消耗的计算机资源少线程和进程关系:1, 一个进程中可以包含多个线程2, 进程中的所有线程共享进程的空间资源。(空间、全局变量、分配的内存等)3, 如果一个进程里面只有一个线程,即单线程情况下,线程和进程等同4, 线程也有...原创 2019-08-11 22:10:38 · 128 阅读 · 0 评论 -
python-司机和售票员
作业:信号通信: 司机和售票员的故事 1,创建父子进程,分别表示司机和售票员 2,当售票员捕捉到SIGINT时,给司机发送SIGUSER1信号,此时司机打印"老司机开车了" 3,当售票员捕捉到SIGQUIT时,给司机发送SIGUSER2信号,此时司机打印'系好安全带,车速有点快' 4,当司机捕捉到SIGTSTP时,发送SIGUSER1给售票员,售...原创 2019-08-11 22:03:53 · 837 阅读 · 0 评论 -
python-学习笔记-信号量/同步和互斥
信号量:给定一定的信号数量,对多个进程可见,并且多个进程均可操作。进程根据信号量的多少可以有不同的行为;from multiprocess import Semaphore()Semaphore(num)功能: 定义信号量参数: num 给定信号量的初始个数返回值: 返回信号量对象sem = Semaphore(num)sem.acquire() 将信号量减一,将信...原创 2019-08-09 18:34:18 · 552 阅读 · 0 评论 -
进程间通信-笔记
进程间通信的方式:a, 磁盘交互:b,Socketc, 管道d, 消息队列e, 共享内存f,信号g,信号量管道通信pipe:含义: 在内存中开辟一个空间,对2个进程都是可见的;从而实现信息传递;需要导入Multiprocessing.pipe 方法Pipe(duplex = True) 功能: 创建一个管道 参数: duplex默认为...原创 2019-08-07 09:01:31 · 143 阅读 · 0 评论 -
python多线程处理客户端请求
Server--通过fork()#!/usr/bin/python3#coding:utf-8from socket import *import os,sysfrom signal import *from time import sleepHOST = ''PORT = 8888#创建socket,端口复用,绑定,监听sockfd = socket()so...原创 2019-08-13 17:05:41 · 491 阅读 · 0 评论 -
python笔记--进程池
创建自己的进程类from multiprocessing import Processfrom time import sleep,ctimeclass Clockprocess(Process): def __init__(self,value): self.value = value Process.__init__(self) ...原创 2019-07-23 14:46:53 · 160 阅读 · 0 评论 -
自定义迭代器--打印b开始n个素数
#练习#1, 写一个实现迭代器协议的类Primes#2, 可以生成b开始n个素数# class Primes:# def __init__(self, b, n)# ...# for x in Primes(10,4):# print(x) # 11,13,17,19class MyPrime: #因为该方法不需要类或者对...转载 2019-06-02 19:35:23 · 417 阅读 · 0 评论 -
python-集合操作的重写
'''练习: 实现有序集合类OrderSet(),能实现两个集合的交集 &,并集 |,补集 -, 对称补集: ^==,!= , 等操作要求: 集合内部list存储'''class OrderSet(): def __init__(self,iterable): self.data = [x for x in iterable] def __rep...原创 2019-06-02 18:38:56 · 282 阅读 · 0 评论 -
python对象笔记
class Car: '''define a class Car''' #初始化方法,构造方法 def __init__(self,b,c,m): self.brand = b self.color = c self.module = m def __del__(self): # 析构方法在对象被销毁前被...原创 2019-04-27 23:24:44 · 94 阅读 · 0 评论 -
python stdin/stdout/stderr
import sys#标准输出,默认输出到屏幕,相当于linux中 1#sys.stdout.write("this is stdout")#sys.stdout.close()#错误输出,默认到屏幕相当于linux中的2#sys.stderr.write("this is error output")#标准输入,默认是从键盘文件中读取; 相当于linux 0s = sys...原创 2019-04-27 10:33:17 · 1461 阅读 · 0 评论 -
python文件操作练习
#写文件#练习一#写一个程序,读取任意行文字信息,当输入空行时结束输入,将读入的字符串存于列表#然后将列表里面的内容写入到文件input.txt中;#练习二#写一个程序,从input.txt中读取之前输入的数据,存入列表中,再加上行号打印显示;格式如下#第一行: xxxx#第二行: xxxx#练习1#定义写函数def input_L(): L = [] ...原创 2019-04-27 10:05:44 · 432 阅读 · 0 评论 -
class方式录入学生成绩
#python 录入成绩,以class方式#定义Student类class Student: name = 'name' age = 0 score = 0#录入成绩def input_student(): L_student = [] while True: stu = Student() stu.name = ...原创 2019-04-27 10:02:52 · 661 阅读 · 0 评论 -
python--binary文件操作
#以二进制方式读文件def read_b(): #f = open("e:/input.txt",'rb') f = open("e:/1.jpg",'rb') print(f.read()) f.close()#以二进制方式写入到文件def write_b(): f = open("e:/output.txt","wb") f.write...原创 2019-04-15 00:54:08 · 7156 阅读 · 0 评论 -
python文件操作--写入文件
#写文件#练习一#写一个程序,读取任意行文字信息,当输入空行时结束输入,将读入的字符串存于列表#然后将列表里面的内容写入到文件input.txt中;#练习二#写一个程序,从input.txt中读取之前输入的数据,存入列表中,再加上行号打印显示;格式如下#第一行: xxxx#第二行: xxxx#练习1#定义写函数def input_L(): L = [] ...原创 2019-04-14 22:15:28 · 5340 阅读 · 0 评论