import time

from multiprocessing import Process, JoinableQueue, cpu_count

import csv

####处理一条数据的方法

def deal_line(line, writer, csv_file):

writer.writerow((line[3], line[1]))

csv_file.flush()#重点,在多进程中写文件需要尽快刷新,否则可能会导致数据丢失

####消费者模型

def consumer(queue, writer, csv_file):

while True:

line = queue.get()

deal_line(line, writer, csv_file)

queue.task_done()

####生产者模型

def producer(queue):

with open('test.txt', 'r') as f:

for line in f:

queue.put(line)

####启动N个生产者N个消费者模型

def main():

with open('t1.csv', 'w+') as csv_file:

writer = csv.writer(csv_file)

queue = JoinableQueue(8)#可限制队列长度

pc = Process(target=producer, args=(queue,))

pc.start()

#多消费者

for _ in range(cpu_count()):

c1 = Process(target=consumer, args=(queue, writer, csv_file))

c1.daemon = True

c1.start()

pc.join()#等待生产者进程全部生成完毕

queue.join()# 等待所有数据全部处理完毕

# 当某些些进程是死循环时可强制终止

# pc.terminate()

if __name__ == '__main__':

now = lambda: time.time()

start = now()

main()

print("Time:", now() - start)

Python 3 读写文件的简单方法!

Python 3 读写文件的简单方法! a = open('test.txt','w') 这行代码创建了一个名为test的文本文档,模式是写入(模式分为三种,w代表写入,r代表阅读,a代表在尾行添加) ...

笨方法学python之读写文件、open函数的用法

一.python读写文件相关知识点 close:关闭文件 read:读取文件的内容//你可以把结果赋给一个变量 readline:只读取文件中的一行 truncate 美 /trʌŋ'ket/ :清空 ...

python查找读写文件

import os ''' 跟据文件名称,后缀查找指定文件 path:传入的路径 filename:要查找的文件名 suffix:要查找的文件后缀 return :返回查找的文件路径 ''' file ...

python之读写文件

1. 读取文件数据,文件必须存在才可以读且如要读取的文件不和当前.py在同一个包下,需要特别指定此文件路径才行 f=open('test.txt',encoding='utf-8')#填写文件路径,打 ...

Python 多进程拷贝文件夹案例

import os import multiprocessing def copy_file(q, file_name, old_folder_name, new_folder_name): &quo ...

【python】 读写文件

#标准输出 sys.stdout.write() sys.stderr.write() #标准输入 while True : try: line = raw_input().rstrip(); exc ...

python 二进制读写文件

#-*- coding: utf-8 -*- f = open('f:/text.bmp','rb') filedata = f.read() filesize = f.tell() f.close( ...

python二进制读写文件

#coding=gbk ''' Created on 2014-5-7 ''' import os.path inputPath = './input.txt' outPath = './out.tx ...

从用python自动生成.h的头文件集合和类声明集合到用python读写文件

最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...

随机推荐

linux下系统编程C环境搭建

一.系统安装 我使用的是VMware8下的ubuntu12.04,这是培训老师说的,12.04相对来说,比较新,而且是5年长期支持版,不容易过时.对于系统的安装,我不想说很多,只是希望大家主义这几点: ...

hivepython 同时读入python 且python脚本中处理外部文件txt

找出表test_gid2中每个gid的安装列表中含有文件pkgs中的pkg名字的数据行. pkgs文件要与python脚本放在一个路径下. 用 transform 的传入数据的时候,不管原文件分隔 ...

VS 2003 无法打开Web项目 文件路径与URL不符 这两者需要映射到相同的服务器位置

解决方法: 将C:\Documents   and   Settings\Administrator\VSWebCache下面的文件全部删除

.NET c# 串口通信

这段时间做了一个和硬件设备通信的小项目,涉及到扫描头.输送线.称重机.贴标机等硬件.和各设备之间通信使用的是串口或网络(Socket)的方式.扫描头和贴标机使用的网络通信,输送线和称重机使用的是串口通 ...

设置TabBar分栏控制器上图片的大小问题

我们都知道,iOS因为屏幕分辨率的问题,UID在交付我们iOS开发人员程序配图的时候,一般是三套图,分别对应三种不同的分辨率,对不同size的屏幕系统会自动使用不同像素的图片,我们只需要在命名时给三套 ...

201521123032 《Java程序设计》第11周学习总结

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

在鼠标右键上加入使用notepad++编辑【转】

我们在安装完notepad++文本编辑器之后,在一个文本文件上右键有时候并没有出现“使用notepad++编辑的选项”,我们可以通过简单地修改注册表文件来增加这样的功能: 1.  首先打开注册表,wi ...

keepalived+mysql主从环境,keepalived返回值是RST,需求解决方法?

环境描述: mysql版本5.6.37    keepalived-1.2.19    系统centos 7:3.10.0-514.26.2.el7    web是:windows  server 2 ...

js循环json得到 键和值

var jsondata=[{"男":4,"女":3,"不详":0},{"男one":23,"女two&quo ...

RAC安装重新运行root.sh

rac1执行root.sh成功,rac2执行失败. 在重新执行root.sh前,在rac2上把crs等配置信息删除: # /u01/app//grid/crs/install/rootcrs.pl - ...

python多进程读同一个文件_python 多进程读写文件相关推荐

  1. python实时读plc数据_python snap7读写西门子S系列PLC寄存器的值(PLC的I、Q、M、DB区)...

    西门子 SiemensTCP/IP调试助手工具是利用python 开发的,适用于西门子S7-300.S7-400.S7-1200.S7-1500等具备Ethernet TCP/IP通讯方式的PLC的( ...

  2. python写完程序保存_Python学习笔记——文件处理

    1.文件路径 1.1 不同系统环境下的路径 1.2 当前工作目录 1.3 绝对路径和相对路径 1.4 新建文件夹-- os.makedirs() 2.文件的读写 2.1 打开文件 2.2 读写文件 3 ...

  3. python多进程读写文件_Python多进程写文件时的一些探究

    问题提出 在没有并发控制的情况下,Python多进程向同一个文件写数据(限制单次写入数据大小)是安全的吗? 这里的安全是指: 不会有进程的日志丢失(被覆盖) 两次写入的数据不会相互混着输出(譬如A进程 ...

  4. python读取txt文件_python实现读写txt文件的几种方法

    一.读写模式: w:向文件中写入内容,w会清空原来文本内容 a:向文件中追加内容 r:从文件中读取内容 wb:以二进制形式写入内容. rb:以二进制形式读文件内容 ab:以二进制形式追加内容 a+.r ...

  5. python3多进程写时拷贝_python多进程实现复制文件

    [Python] 纯文本查看 复制代码''' 多进程实现复制文件 步骤: (1)获得源文件夹路径: (2)获取源文件夹下各文件的文件名 (3)获得目标文件夹 (4)复制文件(文件夹不能复制) 新增内容 ...

  6. python格式化读取文件_python文本读写与格式化

    作为一个IC攻城狮,除了Verilog,还需要使用python等脚本语言做一些简单的文本处理,提高工作效率,这里记录一下自己常用的文本读写,方便查询. 只做简单说明,因为我只用python做一些简单的 ...

  7. python多进程用不了_Python多进程相关的坑

    Python的multiprocessing模块实现了多进程功能,但官方文档上只有一些比较简单的用法,主要是使用函数作为process的target,而如何在class中使用多进程并没有多讲解.goo ...

  8. python多线程多进程多协程_python 多进程、多线程、协程

    1.python的多线程 多线程就是在同一时刻执行多个不同的程序,然而python中的多线程并不能真正的实现并行,这是由于cpython解释器中的GIL(全局解释器锁)捣的鬼,这把锁保证了同一时刻只有 ...

  9. python读xml文件生成头文件_Python根据指定文件生成XML的方法

    因项目需要根据指定格式的文件生成XML标注文件,可以方便使用LabelImg打开进行编辑和查看.其原始文件默认使用逗号进行分隔,如下所示: 第1个值:原始图片中切图小文件,以AIpng_x,其中x代表 ...

最新文章

  1. Android控件之ImageView探究
  2. oracle技术之Oracle 跟踪事件(一)
  3. About Instruments
  4. GitHub 上值得关注的 iOS 开源项目
  5. Java初学者习题20道(转)
  6. 天天象棋 残局闯关 第12关
  7. php混合运算计算器,混合运算计算器
  8. python3 array为什么不能放不同类型的数据_来自俄罗斯的凶猛彪悍的分析数据库ClickHouse...
  9. 12-Flutter移动电商实战-首页导航区域编写
  10. 算法(6)-leetcode-explore-learn-数据结构-数组字符串的双指针技巧
  11. 地面控制点的定义与作用_什么是地面塌陷
  12. mysql的索引和执行计划
  13. 555定时器的应用——多谐振荡器
  14. uniapp手写地图搜索选取功能
  15. Ubuntu16.04实现定时免密远程拷贝脚本
  16. 2018年华为网络技术大赛总结
  17. ARM启动流程及启动代码分析
  18. 3-9 G: LZY的时间转化
  19. java 9宫格抽奖_九宫格抽奖
  20. 乐高计算机游戏泡泡龙的目标,乐高游戏教案

热门文章

  1. 检索算法: BM25原理详解
  2. 打破咖啡外卖边界,星巴克和美团合作带来哪些启发?
  3. TDH大数据平台的卸载与重装
  4. odoo ORM研究3 - odoo fields常用的字段属性
  5. 【ShaderToy】水彩画
  6. Java中什么是单例模式
  7. 实时观测程序运行状态——火焰图(Flame Graphs)
  8. python中对list元素求和、求积的普通方法和便捷方法
  9. Unity 动画事件
  10. 各种音视频编解码学习详解(3)--Mpeg系列——Mpeg 1和Mpeg 2