写出文本数据

g = open('test.txt', 'rt', newline='',encoding = 'utf-8', errors='replace')

t是windows平台特有的所谓text mode(文本模式),区别在于会自动识别windows平台的换行符。类Unix平台的换行符是\n,而windows平台用的是\r\n两个ASCII字符来表示换行,python内部采用的是\n来表示换行符。rt模式下,python在读取文本时会自动把\r\n转换成\n.wt模式下,Python写文件时会用\r\n来表示换行。
newline:在Unix和Windows中是不一样的(分别是n和rn)。 默认情况下,Python会以统一模式处理换行符。 这种模式下,在读取文本的时候,Python可以识别所有的普通换行符并将其转换为单个\n字符类似的,在输出时会将换行符\n转换为系统默认的换行符。 如果你不希望这种默认的处理方式,可以给open()函数传入参数newline=''
encoding就是编码了
errors=replace会忽略错误,比如如果encoding传ascii,在读的时候就有可能有错误,errors=replace会忽略所有错误的字符。

打印输出到文件中

print ('Hello World!', file = f)

使用其他分隔符或换行符

  row = ('ACME', 50, 91.5)  
# print(' '.join(row)) TypeError: sequence item 1: expected str instance, int found
print (' '.join(str(x) for x in row))    #不需要这么麻烦,下面这样就可以了
print(*row, sep=' ', end='!!end')       #sep指定分隔符, end指定 以什么结束    ACME 50 91.5!!end

文件不存在才写入

f = open('txt', 'w')    #这么打开会覆盖原文件,如果原文件没有会新穿件
f = open('txt', 'x')    #用x代替w,如果文件存在会报错。防止以为覆盖源文件
#但是真正的解决办法是这个

import os
  if not os . path . exists('somefile'):
    with open('somefile', 'wt') as f:
      f.write('Hello\n')
  else:
    print('File already exists!')

给函数添加元信息

def add_test(x:int, y:int) -> int:
print(x + y)
add_test(x=1, y=2)
print(add_test.__annotations__) #{'y': <class 'int'>, 'return': <class 'int'>, 'x': <class 'int'>}

python cookboo 文件与IO 函数的更多相关文章

  1. 快速入门Python中文件读写IO是如何来操作外部数据的?

    读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...

  2. Python 常见文件操作的函数示例(转)

    转自:http://www.cnblogs.com/txw1958/archive/2012/03/08/2385540.html # -*-coding:utf8 -*- ''''' Python常 ...

  3. Python常见文件操作的函数示例

    # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...

  4. python基础-文件处理与函数

    1. 文件处理 1.1 文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 1.2 文件读取模式r r文本模式的读,在文件不存在,不会创建新文件 f = ...

  5. python之文件操作的函数

    file=open("e:\\c.py","w",encoding="utf-8")date=file.close()            ...

  6. Python 头文件和常用函数

    #coding=utf-8 """ @version: ?? @author: Donny @Mail: wdm666666@gmail.com @license: La ...

  7. Python 读写文件操作

    python进行文件读写的函数是open或file file_handler = open(filename,,mode) Table mode 模式 描述 r 以读方式打开文件,可读取文件信息. w ...

  8. python之 文件读与写

    python 进行文件读写的函数是open 或filefile_handler = open(filename,,mode) 模式 描述r 以读方式打开文件,可读取文件信息.w 以写方式打开文件,可向 ...

  9. Day3 Python基础学习——文件操作、函数

    一.文件操作 1.对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 #打开文件,读写文件,关闭文件 http://www.cnblogs.com/linha ...

随机推荐

  1. Java进阶01 String类(转载)

    String类包含在java.lang包中.这个包会在Java启动的时候自动import,所以可以当做一个内置类(built-in class).我们不需要显式的使用import引入String类. ...

  2. TypeError: write() argument must be str, not bytes

    w文件打开以 '二进制'  方式: with open('teacher.html','wb+') as f: f.write(response.body) 要写入"中文",防止乱 ...

  3. LINQ TO SQL 实现无限递归查询

    from:http://blog.csdn.net/q107770540/article/list 见论坛内有网友提问类似的问题已经不止一次了, 现总结一下,希望能给以后再碰到此类问题的朋友一些帮助  ...

  4. node.js的安装与第一个hello world、node.js的初始化

    1.下载node.js文件 2.windows下点击安装  重复下一步即可 3.编辑工具  EditPlus编辑器 4.新建保存目录的文件夹,并新建一个文本文档 5.打开EditPlus编辑器  打开 ...

  5. 《从零开始学Swift》学习笔记(Day 12)——说几个特殊运算符

    原创文章,欢迎转载.转载请注明:关东升的博客   除了一些常用的运算符,还有一些其他的: •      引用号(.):实例调用属性.方法等操作符. •      问号(?):用来声明可选类型. •   ...

  6. windows下在Eclipse中启动的tomcat没有乱码,单独部署到tomcat下乱码解决方案

    今天遇到了一个很奇怪的问题,在Eclipse中调试,运行项目一切正常,项目的所有编码都是统一的UTF-8.但是在单独部署到tomcat上的时候出现了中文乱码. 解决方案 第一步:确保项目,jsp页面, ...

  7. python多线程/多进程

    thread和threading的区别 threading相对与thread是更高级别的线程管理模块 thread和threading模块中的一些属性会有冲突 thread模块拥有的同步原因实际上只有 ...

  8. C#访问修饰符比较

  9. ID生成策略

    在电商项目中,图片名.商品ID都要唯一且方便存储,于是记录下这两个ID生成策略的方法,以便日后项目再有需要.具体代码如下 import java.util.Random; /** * 图片名生成 */ ...

  10. javascript基础(整理自廖雪峰)

    不要使用==比较,始终坚持使用===比较false == 0; //返回true. 这种情况, 它会自动转换数据类型再比较false === 0; //返回false. 建议用这种方式 NaN === ...