精华内容
下载资源
问答
  • 将数据输入Excel再转txt文件后,用Python3.7.6中numpy.loadtxt怎么也打不开: 1)选择a=np.loadtxt("pdata4_20.txt",encoding='utf-8')失败; 2)选择a=np.loadtxt("pdata4_20.txt",encoding='gbk')失败 3)选择a...

    将数据输入Excel再转txt文件后,用Python3.7.6中numpy.loadtxt怎么也打不开:

    1)选择a=np.loadtxt("pdata4_20.txt",encoding='utf-8')失败;

    2)选择a=np.loadtxt("pdata4_20.txt",encoding='gbk')失败

    3)选择a=np.loadtxt("pdata4_20.txt",encoding='gb18030')失败

    4)选择a=np.loadtxt("pdata4_20.txt",encoding='gb18030',errors=‘ignore’)失败

    5)在window10用笔记本开打txt文件,将其格式改为utf-8,再用第一句打开就成功了!

    结论:Excel2019和window10自动保存的txt文件格式较高,致使python不能读取,但将TXT的格式改为python支持读取的较低的格式就可以读了。

     

    展开全文
  • 结果发现,从第二次开始保存文件都是错误的,打不开。排查发现文件都是空的 后来想通了,这是因为文件在写入的过程中,指针也会随着向指。所有等文件写入到磁盘,指针也指到了最后 所以就需要文件的指针指向初始...

    最近项目中需要做批量上传日报的功能,照片只拍一张,所有的日报共用,要保存多份,所以在迭代的时候就直接使用

    file.save(filename)
    

    进行保存了

    结果发现,从第二次开始保存的文件都是错误的,打不开。排查发现文件都是空的

    后来想通了,这是因为文件在写入的过程中,指针也会随着向后指。所有等文件写入到磁盘,指针也指到了最后

    所以就需要文件的指针指向初始状态即可

    file.save(filename)
    file.seek(0)
    

    当然,在指针恢复在其他场景也会遇到的比如

    file.read()
    file.save()
    

    诸如此类,但凡有文件或者数据流等等需要用到指针的地方,存储多次都需要将指针指向初始状态

    展开全文
  • 通过将输出写入文件,即便关闭包含程序输出的终端窗口,这些输出也依然存在:你可以在程序结束运行查看这些输出,可与别人分享输出文件,还可编写程序来将这些输出读取到内存中并进行处理。 9.3.1、写入空文件 ...

    目录

    9.3、写入文件

    9.3.1、写入空文件

    9.3.2、写入多行

    9.3.3、附加到文件

    9.3.4、seek() 和 tell() 函数


    9.3、写入文件

    保存数据的最简单的方式之一是将其写入到文件中。通过将输出写入文件,即便关闭包含程序输出的终端窗口,这些输出也依然存在:你可以在程序结束运行后查看这些输出,可与别人分享输出文件,还可编写程序来将这些输出读取到内存中并进行处理。

    9.3.1、写入空文件

    要将文本写入文件,你在调用open()时需要提供另一个实参,告诉Python你要写入打开的文件。为明白其中的工作原理,我们来将一条简单的消息存储到文件中,而不是将其打印到屏幕上:

    """
    file_path = r'write.txt'
    或者
    file_path = r'E:\pythonProject\Demo\write.txt'
    """
    file_path = r'E:\pythonProject\Demo\write.txt'
    with open(file_path,'w') as file_msg:
        file_msg.write('学习使我快乐!')

    代码解析:

    首先在.py项目文件同级目录中创建一个write.txt文件,之后调用open()打开文件,调用时,传递两个参数,第一个实参是要打开文件的名称;第二个实参(‘w’)是告诉Python,要用写入模式打开这个文件。打开文件时,可指定读取模式('r')、写入模式('w')、附加模式('a')或让你能够读取和写入文件的模式('r+')。如果你省略了模式实参,Python将以默认的只读模式打开文件。

    如果你要写入的文件不存在,函数open()将自动创建它。然而,以写入('w')模式打开文件时千万要小心,因为如果指定的文件已经存在,Python将在返回文件对象前清空该文件。

    最后我们调用 write()方法将一个字符串写入文件,运行结果如下:

    注意:Python只能将字符串写入文本文件。要将数值数据存储到文本文件中,必须先使用函数 str() 将其转换为字符串格式~

     

    9.3.2、写入多行

    1. 函数write()不会在你写入的文本末尾添加换行符,因此如果你写入多行时没有指定换行符,文件看起来可能不是你希望的那样:

    file_path = r'E:\pythonProject\Demo\write.txt'
    with open(file_path,'w') as file_msg:
        file_msg.write("只要肯努力,想要的都能自己得到")
        file_msg.write("生活不会惯着你,想要不被抛弃,必须自己争气")

    运行结果:

    我们可以发现都写在了同一行,如果想让换行,则可用 ‘\n’来控制:

    file_msg.write("只要肯努力,想要的都能自己得到。\n")
    file_msg.write("生活不会惯着你,想要不被抛弃,必须自己争气")

    运行结果: 

     

    2. Python 的文件对象中,不仅提供了 write() 函数,还提供了 writelines() 函数,可以实现将字符串列表写入文件中。

    注意,写入函数只有 write() 和 writelines() 函数,而没有名为 writeline 的函数。

    f = open('b.txt','r')
    w = open('a.txt','w+')
    w.writelines(f.readlines())
    w.close()
    f.close()

    运行结果:

     需要注意的是,使用 writelines() 函数向文件中写入多行数据时,不会自动给各行添加换行符。

    像显示到终端的输出一样,还可以使用空格、制表符和空行来设置这些输出的格式。

     

    9.3.3、附加到文件

    如果想给文件附加内容,不想覆盖原有的内容,可以用附加模式打开文件。用附加模式打开文件时,Python不会在返回文件对象前清空文件,而你写入到文件的行都将添加到文件末尾。如果指定的文件不存在,会自动创建一个空文件。

    file_path = r'E:\pythonProject\Demo\write.txt'
    with open(file_path,'a') as file_msg:
        file_msg.write("现在的你决定将来的你。\n")
        file_msg.write("今天的一切挣扎都是为明天积蓄力量,所以别放弃。\n")
    

    运行结果:

     

    9.3.4、seek() 和 tell() 函数

    使用 open() 函数打开文件并读取文件中的内容时,总是会从文件的第一个字符(字节)开始读起。那么,有没有办法可以自定指定读取的起始位置呢?答案是肯定,这就需要移动文件指针的位置。

    文件指针用于标明文件读写的起始位置。假如把文件看成一个水流,文件中每个数据(以 b 模式打开,每个数据就是一个字节;以普通模式打开,每个数据就是一个字符)就相当于一个水滴,而文件指针就标明了文件将要从文件的哪个位置开始读起。

    实现对文件指针的移动,文件对象提供了 tell() 函数和 seek() 函数。tell() 函数用于判断文件指针当前所处的位置,而 seek() 函数用于移动文件指针到文件的指定位置。

    1. tell() 函数

    基本语法格式如下:

    file.tell()
    
    # file 表示文件对象

    案例:

    测试文件指针位置。

    file_path = r'E:\pythonProject\Demo\test.txt'
    file = open(file_path,'r',encoding='utf-8')
    print('当前指针位置===>'+str(file.tell()))
    print('读取到的内容===>'+file.read(3))
    print('当前指针位置===>'+str(file.tell()))
    file.close()

    运行结果:

    当前指针位置===>0
    读取到的内容===>轻轻的
    当前指针位置===>9

    小结

    可以看出,当调用open()函数打开文件时,文件指针的起始位置为0,表示位于文件的开头处,当使用read()函数从文件中读取3个字符后,文件指针同时向后移动了3个字符的位置,这就表示,当程序使用文件对象读写收据时,文件指针会自动向后移动,读写多少数据,文件指针就会自动向后移动多少个位置。

     

    2. seek() 函数

    seek() 函数用于将文件指针移动至指定位置,该函数的语法格式如下:

    file.seek(offset[, whence])

    其中,各个参数的含义如下:

    • file:表示文件对象;
    • whence:作为可选参数,用于指定文件指针要放置的位置,该参数的参数值有 3 个选择:0 代表文件头(默认值)、1 代表当前位置、2 代表文件尾。
    • offset:表示相对于 whence 位置文件指针的偏移量正数表示向后偏移,负数表示向前偏移。例如,当whence == 0 && offset == 3(即 seek(3,0) ),表示文件指针移动至距离文件开头处 3 个字符的位置;当whence == 1 && offset == 5(即 seek(5,1) ),表示文件指针向后移动,移动至距离当前位置 5 个字符处。

    测试代码:

    file_path = r'E:\pythonProject\Demo\test.txt'
    f_obj = open(file_path,'rb')
    # 判断文件指针的位置
    print(f_obj.tell()) # 运行结果:0
    # 读取一个字节,文件指针自动后移一个数据
    print(f_obj.read(1)) # 运行结果: b'\xe8'
    print(f_obj.tell()) # 运行结果:1
    
    # 将文件指针向后移动6个字符的位置
    f_obj.seek(6)
    print(f_obj.tell()) # 6
    print(f_obj.read(1)) # b'\xe7'
    print(f_obj.tell()) # 7
    # 将文件指针从当前位置(7),向后移动5个字符的位置
    f_obj.seek(5,1)
    print(f_obj.tell()) # 12
    print(f_obj.read(1)) # b'\xe8'
    
    # 将文件指针从文件末尾向前移动到距离2个字符的位置
    f_obj.seek(-1,2)
    print(f_obj.tell()) # 725
    print(f_obj.read(1)) # b'\x82'
    print(f_obj.tell()) # 726
    

     

     

     

    展开全文
  • headers ={#"Accept-Encoding":"gzip, deflate, sdch",}因为网站通常会给图片做压缩,所以获取到的图片是比原图小的压缩的内容,如果直接写入文件的话,是打不开的。这里有两种方法:1,将headers中的gzip注释掉,...
    headers ={
    #"Accept-Encoding":"gzip, deflate, sdch",
    }
    因为网站通常会给图片做压缩,所以获取到的图片是比原图小的压缩后的内容,如果直接写入文件的话,是打不开的。
    这里有两种方法:
    1,将headers中的gzip注释掉,直接获取原图。
    2,将获取到的压缩后的内容进行解压后再保存。

    转载于:https://www.cnblogs.com/lsjk/p/9180510.html

    展开全文
  • python cookbook(第3版)

    2016-01-06 22:24:38
    5.5 文件不存在才能写入 5.6 字符串的I/O操作 5.7 读写压缩文件 5.8 固定大小记录的文件迭代 5.9 读取二进制数据到可变缓冲区中 5.10 内存映射的二进制文件 5.11 文件路径名的操作 5.12 测试文件是否存在 ...
  • python文件处理,open write 简单了解http协议头信息 os,sys模块 threading模块多线程 requests模块发请求 </code></pre> 题目既然是多线程下载,首先要解决的就是下载问题,为了方便测试...
  • 或者生成一个csv文件发出去</li><li>然而这是一个看脸的社会,运维也逃脱了这个魔咒</li></ul> 级别2 浏览器端展现 生成list之后,拼接sql,存入数据库 <h2>talk is cheap, show me the money code! ...
  • 实现将new_list转换为字符串写入文件中 pass f.close() def load_stu(self): global f # 补充代码,实现以"r"模式打开学员数据文件,如果文件不存在(即发生异常)则以"...
  • pyspark:读取数据时打印出的数据乱码

    千次阅读 2019-07-20 16:31:46
    python读取文件后(代码的第一行有标注# -*- coding: utf-8 -*-)打印中文为乱码,如下: 打开文本,选择转为为UTF-8编码,(不是使用UTF-8编码)保存 再次执行读取代码,可以正常识别中文 ...
  • python写一个记事本,打开文件,出现错误 # 记事本项目 from tkinter.colorchooser import * from tkinter .filedialog import * class Application(Frame): def __init__(self, master=None): ...
  • ) # 用file.split 将文件的名字分隔,分隔的符号是‘.’ if name[0] == 'cat': # 所以只用读取 . 前面这个字符串 cats.append(file_dir + file) label_cats.append(0) # 把图像和...
  • 自动提取APK文件中的AndroidManifest.xml文件内容(若为AXML文件则直接提取文件内容),以TXT文件格式保存到当前目录,并自动打开生成的TXT文件。执行结果将在右下角冒泡提示。 4、查看APK信息 自动提取APK文件...
  • 第二,数据保存在csv文件容易被窃读,应该保存到数据库里; 第三,显示考勤日志时应该由自己的电子表格实现而不是直接调用excel。 基于以上的问题和算法优化的需要,我把代码优化成了V2.0,同时所以的代码合在一...
  • 2、优化了文件保存与否检查,避免原检查时保存文件引起的程序崩溃。 3、完成了RGB色与VBColor互转功能。 ——Ve.3.3.1 更新说明—— 1、加强了网络接口的稳定性。 2、取消了文件保存的资源释放,避免重复保存导致的...
  • PHP加解密软件

    2011-12-24 11:55:32
     现在再去加密后文件保存的目录中,会看到其中也有一个test.php,它是否和原来的test.php一样呢?用编辑软件打开它,可以看到它不再是原来的内容了,如图2所示。注意:自己一定要保存好原始代码,不然丢失了,连你...
  • 2020-2801 CVE-2020-2798 CVE-2020-2883 CVE-2020-2884 CVE-2020-2950 WebLogic T3 payload exploit poc python3|CVE-2020-2883-Weblogic coherence.jar RCE|WebLogic-Shiro-shell-WebLogic利用CVE-2020-2883Shiro...
  • 运行train.py,使用预处理的数据,对模型进行自回归训练,模型保存在根目录下的model文件夹中。 在训练时,可以通过指定patience参数进行early stop。当patience=n时,若连续n个epoch,模型在验证集上的loss均没有...
  • 将csv数据导出成压缩的紧凑版js格式纯数据文件,省市区3级数据65kb大小。 将csv数据导出成JSON对象、JSON数组纯数据文件,省市区3级数据120kb+。 网页版省市区镇多级联动测试。 网页版省市区多级联动js代码生成...
  • IOException: CreateProcess error=2, 系统找到指定的文件。 具体报错日志如下所示 IOException: Cannot run program "D:\Program File\AndroidSdk\ndk-bundle\toolchains\mips64el-linux-android-4.9\prebuilt\...
  • 安装扩展程序的kiwi浏览器, 基本访问任何网站都看到广告~ 101《Scroll To Top Button》一键滚动到页面顶部或底部 PC网站的导航栏在页面顶部,且不会保持在窗口顶部,当用户看完页面,想使用导航切换页面时...
  • ips 文件的分析: 主要分析3块,一块是Triggered by Thread线程的调用栈回溯信息,该部分保存了崩溃进程的所有线程的方法栈信息;一块是与架构相关崩溃的线程状态;最后是Binary Images信息;。[通过命令行工具 ...
  • CGI程序的伸缩性很理想,因为它为每一个正在运行的CGI程序一个独立进程。解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的web服务器(比如mod_perl,JSP)。PHP就可以以这种方式安装,虽然很少有人愿意...
  • 4.5.4 怎么出线程栈信息。 开源框架 4.5.5 简单讲讲tomcat结构,以及其类加载器流程,线程模型等。 4.5.6 tomcat如何调优,涉及哪些参数 。 4.5.7 讲讲Spring加载流程。 4.5.8 Spring AOP的实现原理。 4.5.9...

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

python文件保存后打不开

python 订阅