`
hugh.wangp
  • 浏览: 293519 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

PYTHON-文件输入输出学习

阅读更多

 

 

文件字符流的输入输出对应的函数不太多,大概如下几个函数能满足大部分的需求

open()

close()

 

read()

readline()

readlines()

write()

writelines()

 

seek()

tell()

 

 

更多的函数、参数可以通过dir(file)help(file.function)获取详细信息

 

首先肯定是通过open打开文件了

语法如下:

open(file, mode='r', buffering=-1, encoding=None,errors=None, newline=None, closefd=True)

mode默认是r,对于字符流,一般r,w,a,r+,w+,a+基本上够用了。查看文件打开的模式,可以利用参数mode

 

f=open('./test.txt','a+')  #以追加和读的方式打开当前目录下的文件test.txt

f.mode #获取文件打开的模式

#文件创建后就可以读写操作了,mode=a+ 当文件不存在,先创建空文件

f.write('hello/n')

f.read() #此时读取肯定是'',这表示文件末尾,因为当写记录后,字符流的当前位置就是字符串的末尾

f.tell() #通过此函数(返回字符流的当前位置)可以看到返回的数字为6

f.seek(0) #通过此函数(设置字符流的位置)可以把当前位置设置到字符流的开始位置(0)

f.read() #这样我们就能返回刚才写入的数据(hello/n),记着一点,读取后,当前位置就已经变成了文件末尾(read()函数一直读到文件末尾)

f.write('world/n') #重新添加一行记录,因为mode='a',是在文件末尾追加,所以先前写入的hello/n依然存在

f.seek(0) #回到字符流的起始位置

f.readline()/f.readlines() #readline()返回一行记录

f.seek(0)

data_list = f.readlines() #readlines()把所有行的记录都返回,并插入到一个list中,list的一个元素就是一行记录

f.writelines(data_list) #把一个list的数据插入到文件中,如果list的各个元素不含有换行符,那么writelines写入的数据不会自动换行

 

---------------------------------

个人学习笔记,难免有不正确或偏颇地方,请大家指正,一起学习!

 

 

0
0
分享到:
评论

相关推荐

    PyPI 官网下载 | python-sox-0.0.1.tar.gz

    5. **实时音频处理**:通过管道或标准输入/输出进行实时音频处理。 **应用场景** - 音频编辑和处理应用:例如,开发一款简单的音频编辑工具,可以实现剪辑、合并等功能。 - 音频分析:提取音频特征,用于音乐推荐...

    byte-of-python-chinese-edition

    10. 输入与输出,包括文件操作、标准输入输出等内容。 11. 异常,教授异常处理机制,帮助读者编写更健壮的程序。 12. 标准库,简要介绍Python标准库中的各种模块和功能。 13. 更多,提供进一步学习和实践的建议。 14...

    Python-XMind2TestCase基于python实现提供了一个高效测试用例设计的解决方案

    3. 运行Python-XMind2TestCase,指定输入的XMind文件和输出的测试代码格式。 4. 生成的测试代码可以直接整合到测试自动化框架中,执行测试并获取结果。 在压缩包文件“xmind2testcase-master”中,可能包含了以下...

    opencv_python-3.3.1-cp36-cp36m-win_amd64

    OpenCV在Python中的应用非常广泛,它支持多种图像和视频的输入输出格式,如BMP、JPEG、PNG、TIFF等。利用numpy数组接口,OpenCV可以方便地与其他科学计算库如NumPy、SciPy等集成。在机器学习方面,OpenCV集成了SVM...

    Python-ELM-master.zip_ELM极限学习机_python ELM_python elm回归_多分类

    ELM的核心思想是随机初始化隐藏层节点权重和偏置,然后通过单次学习过程确定输出层权重,从而极大地提高了训练速度。 **Python-ELM 实现** 在Python中,实现ELM的方法有很多,其中一个流行的库是`Python-ELM-...

    Python-Core-50-Courses-master.rar

    2. **输入与输出**:学习如何从用户获取输入并打印输出,理解`input()`函数和`print()`函数的使用。 3. **控制结构**:掌握条件语句(if-else,if-elif-else)和循环(for,while)的使用,理解如何通过这些结构来...

    Python-100-Days-master.zip

    这是实际项目中常见的任务,掌握这部分能让你更好地处理数据输入输出。 异常处理是任何编程语言中必不可少的部分,Python的try/except结构可以帮助你编写健壮的代码,防止程序因错误而崩溃。 进一步,你会接触到...

    python-3.86中文文档

    7. **标准输入输出**:介绍如何处理程序的输入和输出,包括使用sys.stdin和sys.stdout,以及文件操作的相关函数。 8. **正则表达式**:Python内置的re模块提供了强大的正则表达式支持,用于文本匹配和搜索。 9. **...

    PyPI 官网下载 | python-subprocess-utils-0.0.1.tar.gz

    在Python编程中,`subprocess`模块是用于创建新的进程、连接到它们的输入/输出/错误管道,并获取它们的返回码。然而,`subprocess`模块的接口有时可能对初学者来说不够直观,Python Subprocess Utils 库就是为了简化...

    python官方3.6.0-amd64版本exe安装包

    4. **学习资源**:Python社区提供了许多学习资源,如官方文档、在线教程和CSDN等网站上的博客,例如提供的链接就是一个详细的Python安装和使用教程。 5. **IDE支持**:PyCharm、VS Code、Atom等集成开发环境提供了...

    Python-用Python3编写的通用文件搜索和替换工具

    在学习或使用这样的工具时,我们需要了解Python的基本语法,如文件操作、字符串处理和递归函数。此外,理解正则表达式可以帮助我们更精确地匹配和替换文本。对于开发人员来说,掌握如何编写类似工具的代码逻辑和结构...

    Python-try试用python包的超级简便命令行工具

    在Python中,包是一种组织代码的方式,通常包含一个或多个模块(.py文件),以及相关的资源文件。通过导入包,我们可以访问其中的函数、类和其他可调用对象。Python-try工具的出现,使得我们能够在不安装包到本地...

    Python-NetEaseMusicBox命令行版本的网易云音乐

    总的来说,Python-NetEaseMusicBox结合了Python编程、命令行交互、网络请求、音频处理等多个领域的知识,是学习Python开发命令行工具的一个优秀实例。通过深入理解这个项目,不仅可以提升Python编程技能,还能掌握...

    Python库 | python-args-1.0.1.tar.gz

    在Python生态系统中,库是开发者共享和重用代码的方式,它们提供了各种功能,如处理输入/输出、数学运算、网络通信、数据处理等。"args"这个名字通常与命令行参数处理有关,因为很多编程语言都有模块或库来帮助解析...

    Python-dumbo这个Python模块可以让人轻松的编写和运行Hadoop程序

    在Hadoop生态系统中,通常MapReduce作业是用Java编写的,这给Python开发者带来了一定的学习和使用门槛。而Python-dumbo通过提供一个简单的API,允许Python程序员以他们熟悉的语言编写Map和Reduce函数,降低了这一...

    python-snap7-master (1)_snap7lib_snap7py收费_snap7py收费_snap7_PLCS7

    这包括读取和写入PLC的输入/输出、修改程序变量、执行诊断任务等。这种方式让开发人员能够利用Python的强大功能来处理PLC相关的任务,同时避免了学习专门的PLC编程语言。 在`python-snap7-master`这个压缩包中,很...

Global site tag (gtag.js) - Google Analytics