read

文件操作

半城伤御伤魂 提交于 2020-01-27 15:09:49
r+、w+、a+各做一次读写 追加写不管游标在哪个位置写的内容都在最后。 用readline读文件的所有内容: fp = open ( "f:\\a.txt" , "r" ) while 1 : content = fp . readline ( ) print ( content ) if content == "" : break fp . close ( ) readlines() with open ( "f:\\a.txt" , 'r' ) as f : for line in f : print ( line ) 小练习:写一个文件,内容如下: a26 b25 c24 d23 … z1 with open ( "f:\\a.txt" , 'w' ) as fp : for i in range ( 26 ) : fp . write ( chr ( ord ( "a" ) + i ) + str ( 26 - i ) + "\n" ) with open ( "f:\\a.txt" , 'r' ) as fp : print ( fp . read ( ) ) with open ( "f:\\a.txt" , 'w+' ) as fp : for i in range ( 26 ) : fp . write ( chr ( ord ( "a" ) + i ) +

python 安装 pymssql 库时报错

老子叫甜甜 提交于 2020-01-27 08:05:49
python 安装 pymssql 库时报错 安装第三方库 pip install pymssql Traceback (most recent call last): File “c:\users\XXX\appdata\local\programs\python\python37\lib\site-packages\pip_vendor\urllib3\response.py”, line 425, in _error_catcher yield File “c:\users\XXX\appdata\local\programs\python\python37\lib\site-packages\pip_vendor\urllib3\response.py”, line 507, in read data = self._fp.read(amt) if not fp_closed else b"" File “c:\users\XXX\appdata\local\programs\python\python37\lib\site-packages\pip_vendor\cachecontrol\filewrapper.py”, line 62, in read data = self.__fp.read(amt) File “c:\users\XXX\appdata\local

LCA的一些算法

人盡茶涼 提交于 2020-01-27 03:36:26
  LCA,就是求树上任意两点的最近公共祖先   (本题图片与代码均为Luogu3379)   方法我好像讲过一个,这次把主要的三个一起讲一讲   <1> 倍增(O(n log n))   我们先考虑最基本的LCA,记录每一个点的父节点和深度。   对于两个点x,y,先将它们调到同一高度(令dep[x]>dep[y],即把x向上移(dep[x]-dep[y])步即可,然后一起往上走就可以了。   这复杂度是O(nq)的,所以在此基础上优化。   用father[i][j]表示点j向上走2^i步时的点是多少(没有就是-1),然后每次上移只要走log n次即可。   预处理的话 father[i][j]]=father[i-1][father[i-1][j]];递推即可。   CODE #include<cstdio> #include<iostream> #include<cstring> using namespace std; const int N=500005,P=25; struct data { int to,next; }e[N*2+10]; int head[N*2+10],dep[N],father[P][N],i,j,n,m,x,y,root,k; inline void read(int &x) { x=0; char ch=getchar(); while

MySQL 查询优化之 Multi-Range Read

时光怂恿深爱的人放手 提交于 2020-01-26 13:49:42
MySQL 查询优化之 Multi-Range Read 在存储引擎中未缓存的大表,使用辅助索引的range scan检索数据, 可能会导致基表进行许多随机磁盘访问。 通过磁盘扫描多范围读取(MRR)优化,可以减少随机I/O,并且将随机I/O转化为顺序I/O,提高查询效率 MRR的工作原理 根据辅助索引的叶子结点上找到的主键值得集合存储到 read_rnd_buffer 中,然后在该buffer中对主键值进行排序,最后再利用已经排序好的主键值的集合,去访问表中的数据,这样就由原来的 随机/O变成了顺序I/O ,降低了 查询过程中的I/O消耗 。 SELECT * FROM t WHERE key_part1>=1000 and key_part1<2000 AND key_part2=1000; 表 t 有 (key_part1,key_part2 )的联合索引因此索引根据 key_part1,key_part2 的位置关系进行排序。 若没有MRR,此时查询类型为Range。SQL优化器会先将key_part1>1000 and key_part2<2000的数据线取出来,即使key_part2不等于1000。待取出的行数据后在根据key_part2的条件进行过滤,这会导致无用的数据被取出,如果有大量的数据且其key_part2不等于1000,则启用MRR优化会使性能有巨大的提升

read 命令

前提是你 提交于 2020-01-26 10:14:31
文章目录 【用途】 【语法格式】 【用途代码】 读取键盘的输入 逐行读取文档的内容 【用途】 从标准输入读取单行数据 读取键盘的输入 与重定向结合,读取文档中的一行数据 【语法格式】 read -参数 var_name    # read 将得到的单行数据,赋值给变量 read -参数 var1_name var2_name var3_name    # read 可以一次给多个变量赋值 read 的参数如下所示: 参数 说明 -a -d -p -e -n -r -s -t -u 【用途代码】 读取键盘的输入 #!/bin/sh #Date:2020/01/17 #Author:Allen #Note:从键盘获取输入值 echo "请输入您的姓名:" read name echo "您的姓名是: $name " 逐行读取文档的内容 2.1 利用while循环实现 #!/bin/sh #Date:2020/01/17 #Author:Allen #Note:利用while循环实现逐行读取文档的内容 while read line do echo $line done < file_name 命令 < file_name 表示将输入重定向到file_name file_name 知道文档名 line 是变量名称 , 这里取名line是为了方便理解 2.2 利用管道实现 #!/bin

二十一、文件操作

[亡魂溺海] 提交于 2020-01-25 12:16:11
Day 09 文件操作 什么是文件 文件是操作系统系统的虚拟单位,我们操作文件就是对操作系统发起请求,然后由操作系统将用户或应用程序对于文件的读写操作转换成对硬盘的读写操作 如何操作文件 打开文件 读写数据 保存文件 关闭文件 python程序控制文件 read 一次性读取数据 fr = open(file,mode='r',encoding='utf-8') #打开文件 print(fr.read()) #一次性读取所有的内容 fr.close() readline 读取一行,如果读完了所有数据,指针会移到文件末尾,再次读取则为空 fr = open(file,mode='r',encoding='utf-8') #打开文件 print(fr.readline()) #一次读取一行内容 fr.close() read模式打开文件 读取文件内容,向操作系统发起读的请求,汇报操作系统转成具体的硬盘操作,将内容由硬盘读入内存 由于python的垃圾回收机制只回收引用计数为0的变量,但是打开文件还占用操作系统的资源,所以我们需要回收操作系统的资源 del fr只是回收变量,我们必须使用fr.close()关闭文件 write模式打开文件 fw = open(file,mode='w',encoding='utf-8') #打开文件,并清空文件 fw.write(写入的数据) #写入数据

COGS 2685. 迷妹

故事扮演 提交于 2020-01-24 16:56:12
★ 输入文件: fans.in 输出文件: fans.out 简单对比 时间限制:1 s 内存限制:256 MB 【题目描述】 小钟、小皓和小曦都是著名偶像派OI选手,他们都有很多迷妹。 现在,有n个妹子排成了一行,从左到右编号为1到n。这些妹子中,任意一个都是其中一个人的迷妹。 现在,蒟蒻wyz有Q个问题,第i个问题为:编号在l[i]到r[i]范围内的妹子中,分别有几个小钟的迷妹、小皓的迷妹、和小曦的迷妹。 【输入格式】 输入到fans.in 第一行2个正整数n,Q。 第2行到第n+1行每行一个正整数a[i],描述了第i个妹子是谁的迷妹。a[i]=1表示小钟的迷妹,a[i]=2表示小皓的迷妹,a[i]=3表示小曦的迷妹。 第n+2行到第n+Q+1行,每行2个整数,表示第i个问题。 【输出格式】 输出到fans.out 共Q行,每行3个用空格分开的整数,分别表示对于第i个问题,有多少小钟、小皓、小曦的迷妹。 【样例输入】 6 3 2 1 1 3 2 1 1 6 3 3 2 4 【样例输出】 3 2 1 1 0 0 2 0 1 【提示】 【数据范围】 对于10%的数据,保证1<=n<=10,Q<=10, 对于25%的数据,保证1<=n<=100,Q<=100, 对于45%的数据,保证1<=n<=1000,Q<=1000, 对于100%的数据,保证1<=n<=100,000,Q<

read系统调用

烈酒焚心 提交于 2020-01-24 15:22:07
可参考上一篇文章: struct file结构体 read系统调用是glibc库里面的一个函数,是对系统调用函数sys_read()的封装与实现。glic库会将read函数在用户态下进行解析,通过寄存器将参数保存起来,并借助于系统调用名称获得系统调用号,该系统调用号又可以作为系统调用函数在sys_call_table中的索引获取函数入口地址,该表位于linux-4.13.16\arch\x86\entry\syscalls\syscall_64.tbl中,接下来就是即将要分析的sys_read调用了 1.内核源码特殊用法 [1]__user属性 该属性的主要目的是便于通过 sparse 工具检查 Linux内核代码。[include/linux/compile.h] 中定义了该属性: # define __user __attribute__((noderef, address_space(1))) 其中__attribute__是gcc的编译属性,主要用于改变所声明或定义的函数或数据的特性,它有很多子项,用于改变作用对象的特性。比如对函数,noline将禁止进行内联扩展、noreturn表示没有返回值、pure表明函数除返回值外,不会通过其它(如全局变量、指针)对函数外部产生任何影响。此处的__user告诉编译器它是一个用户数据,这样在进行内核编译时就可以进行语法检查

linux 中的 open() read() write() close() 函数

早过忘川 提交于 2020-01-24 01:59:45
1. open()函数 功能描述:用于打开或创建文件,在打开或创建文件时可以指定文件的属性及用户的权限等各种参数。 所需头文件:#include <sys/types.h>,#include <sys/stat.h>,#include <fcntl.h> 函数原型: int open(const char *pathname,int flags,int perms) 参数: pathname :被打开的文件名(可包括路径名如"dev/ttyS0") flags :文件打开方式, O_RDONLY:以只读方式打开文件 O_WRONLY:以只写方式打开文件 O_RDWR:以读写方式打开文件 O_CREAT:如果改文件不存在,就创建一个新的文件,并用第三个参数为其设置权限 O_EXCL:如果使用O_CREAT时文件存在,则返回错误消息。这一参数可测试文件是否存在。此时open是原子操作,防止多个进程同时创建同一个文件 O_NOCTTY:使用本参数时,若文件为终端,那么该终端不会成为调用open()的那个进程的控制终端 O_TRUNC:若文件已经存在,那么会删除文件中的全部原有数据,并且设置文件大小为0 O_APPEND:以添加方式打开文件,在打开文件的同时,文件指针指向文件的末尾,即将写入的数据添加到文件的末尾 O_NONBLOCK: 如果pathname指的是一个FIFO

Python 文件数据读写

孤街浪徒 提交于 2020-01-23 10:37:46
文件数据读写 读写文件,本质上是请求操作系统打开一个文件对象,然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件)。 文件读取 使用 Python 内置 open() 函数,以 rt 的模式读取文件,如下示例: >> > f = open ( 'some.txt' , 'rt' ) 这行代码就表示打开一个文件,若是文件不存在,会抛出 IOError 的异常,并给出详细的信息提示: >> > f = open ( 'undefined.txt' , 'rt' ) Traceback ( most recent call last ) : File "<stdin>" , line 1 , in < module > FileNotFoundError : [ Errno 2 ] No such file or directory : 'undefined.txt' 当成功打开文件时,可使用 read() 函数读取文件的内容: >> > f . read ( ) 'Hello world!' 当数据读取完毕后,需要调用 close() 关闭文件。因为文件对象会占用资源,使用完毕后需要及时关闭释放资源。 >> > f . close ( ) 还有一种方法就是使用 with 语句,给被使用的文件创建一个上下文环境,这样文件对象就能够自动关闭。