最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用python與文件進(jìn)行交互的方法

 更新時(shí)間:2018年03月01日 08:58:16   作者:Hantaozi  
本篇文章主要介紹了用python與文件進(jìn)行交互的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

本文介紹了用python與文件進(jìn)行交互的方法,分享給大家,具體如下:

一.文件處理

1.介紹

計(jì)算機(jī)系統(tǒng):計(jì)算機(jī)硬件,操作系統(tǒng),應(yīng)用程序

應(yīng)用程序無法直接操作硬件,通過操作系統(tǒng)來操作文件,進(jìn)而讀/寫硬件中的文件。

python打開文件過程:

#打開
f=open('a.txt','r')
#通過句柄對(duì)文件進(jìn)行操作
read_f=f.read()
#關(guān)閉文件
f.close()
with open('a.txt','r') as f:  #不需要關(guān)閉
f.close() #回收操作系統(tǒng)打開的文件
del f #回收應(yīng)用程序級(jí)的變量

2.打開文件的模式

a.打開文本文件

#r,只讀模式【默認(rèn)模式,文件必須存在,不存在則拋出異?!?
f=open('a.txt',encoding='utf-8')
data1=f.read()
print(f.readline(),end='')
print(f.readlines())
#w,只寫模式【不可讀;不存在則創(chuàng)建;存在則清空內(nèi)容】
f=open('a.txt','w',encoding='utf-8')
f.write('werf')
#a,只追加寫模式【不可讀;不存在則創(chuàng)建;存在則只追加內(nèi)容】
f=open('a.txt','a',encoding='utf-8')
f.write('werf\n')

b.對(duì)于非文本文件,只能使用b模式,"b"表示以字節(jié)的方式操作(而所有文件也都是以字節(jié)的形式存儲(chǔ)的,使用這種模式無需考慮文本文件的字符編碼、圖片文件的jgp格式、視頻文件的avi格式

with open('1.jpg','rb') as f_read:
  data=f_read.read()
  print(data)
with open('a.txt','rb') as f_read:
  data=f_read.read().decode('utf-8') #解碼
  print(data)
with open('a.txt','wb')as f_write:
  f_write.write('adsf'.encode('utf-8'))
'''
練習(xí),利用b模式,編寫一個(gè)cp工具,要求如下:

  1. 既可以拷貝文本又可以拷貝視頻,圖片等文件

  2. 用戶一旦參數(shù)錯(cuò)誤,打印命令的正確使用方法,如usage: cp source_file target_file
'''
import sys
if len(sys.argv)!=3:
  print('usage:cp source_file target_file')
  sys.exit()
source_file,target_file=sys.argv[1],sys.argv[2]
print()
with open(source_file,'rb')as f_read,open(target_file,'wb')as f_write:
  for line in f_read:
    f_write.write(line)

3.文件內(nèi)光標(biāo)的移動(dòng)

#以文本模式讀文件,n代表的是字符的個(gè)數(shù)
with open('a.txt','r')as f_read:
  data=f_read.read(6)
  print(data)
#以b模式讀文件,n代表的是字節(jié)的個(gè)數(shù)
with open('a.txt','rb')as f_read:
  data=f_read.read(6)
  print(data)
# tell:告訴當(dāng)前光標(biāo)的位置
with open('a.txt','r',encoding='utf-8')as f_read:
  data=f_read.read(4)
  data1=f_read.tell()
  print(data,data1)
# seek:移動(dòng)光標(biāo)(0:文件開頭默認(rèn);1:文件當(dāng)前光標(biāo);2:文件末尾)
with open('a.txt', 'r', encoding='utf-8')as f_read:
  data = f_read.seek(3)
  data1 = f_read.read()
  print(data, data1)
# 實(shí)現(xiàn)tail功能
import time
with open('access.log', 'rb')as f_read:
  f_read.seek(0,2)
  while True:
    line = f_read.readline()
    if line:
      print(line.decode('utf-8'),end='')
    else:
      time.sleep(1)

4.文件的修改

import os

with open('a.txt') as read_f,open('.a.txt.swap','w') as write_f:
  for line in read_f:
    line=line.replace('alex','SB')
    write_f.write(line)

os.remove('a.txt')
os.rename('.a.txt.swap','a.txt')

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Pandas DataFrame數(shù)據(jù)存儲(chǔ)格式比較分析

    Pandas DataFrame數(shù)據(jù)存儲(chǔ)格式比較分析

    Pandas 支持多種存儲(chǔ)格式,在本文中將對(duì)不同類型存儲(chǔ)格式下的Pandas Dataframe的讀取速度、寫入速度和大小的進(jìn)行測(cè)試對(duì)比,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2023-09-09
  • python執(zhí)行scp命令拷貝文件及文件夾到遠(yuǎn)程主機(jī)的目錄方法

    python執(zhí)行scp命令拷貝文件及文件夾到遠(yuǎn)程主機(jī)的目錄方法

    今天小編就為大家分享一篇python執(zhí)行scp命令拷貝文件及文件夾到遠(yuǎn)程主機(jī)的目錄方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • pycharm遠(yuǎn)程調(diào)試openstack的圖文教程

    pycharm遠(yuǎn)程調(diào)試openstack的圖文教程

    這篇文章主要為大家詳細(xì)介紹了pycharm遠(yuǎn)程調(diào)試openstack的圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 在python中將list分段并保存為array類型的方法

    在python中將list分段并保存為array類型的方法

    今天小編就為大家分享一篇在python中將list分段并保存為array類型的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 開始著手第一個(gè)Django項(xiàng)目

    開始著手第一個(gè)Django項(xiàng)目

    這篇文章主要介紹了開始著手第一個(gè)Django項(xiàng)目的過程,Django是豐富多彩的Python框架中人氣最高的一個(gè),功能多而全,需要的朋友可以參考下
    2015-07-07
  • pyinstaller執(zhí)行報(bào)錯(cuò)的問題解決

    pyinstaller執(zhí)行報(bào)錯(cuò)的問題解決

    有時(shí)候,PyInstaller可能無法正確識(shí)別和打包所有的依賴項(xiàng),導(dǎo)致名稱錯(cuò)誤,本文主要介紹了pyinstaller執(zhí)行報(bào)錯(cuò)的解決方案,感興趣的可以了解一下
    2023-11-11
  • Python基于wordcloud及jieba實(shí)現(xiàn)中國(guó)地圖詞云圖

    Python基于wordcloud及jieba實(shí)現(xiàn)中國(guó)地圖詞云圖

    這篇文章主要介紹了Python基于wordcloud及jieba實(shí)現(xiàn)中國(guó)地圖詞云圖,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python?Pandas的concat合并

    Python?Pandas的concat合并

    這篇文章主要介紹了Python?Pandas的concat合并,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Python灰度變換中位圖切割分析實(shí)現(xiàn)

    Python灰度變換中位圖切割分析實(shí)現(xiàn)

    灰度變換是指根據(jù)某種目標(biāo)條件按一定變換關(guān)系逐點(diǎn)改變?cè)磮D像中每個(gè)像素灰度值的方法。目的是改善畫質(zhì),使圖像顯示效果更加清晰。圖像的灰度變換處理是圖像增強(qiáng)處理技術(shù)中的一種非常基礎(chǔ)、直接的空間域圖像處理方法,也是圖像數(shù)字化軟件和圖像顯示軟件的一個(gè)重要組成部分
    2022-10-10
  • python 深度學(xué)習(xí)中的4種激活函數(shù)

    python 深度學(xué)習(xí)中的4種激活函數(shù)

    這篇文章主要介紹了python深度學(xué)習(xí)中的4種激活函數(shù),幫助大家更好的進(jìn)行深度學(xué)習(xí),感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論

平安县| 巩留县| 新宁县| 阿图什市| 尖扎县| 镇江市| 中山市| 萝北县| 寿宁县| 凌海市| 通化县| 临沂市| 舟山市| 花垣县| 新昌县| 岳阳市| 安多县| 鄯善县| 邵阳市| 阳春市| 若尔盖县| 镇赉县| 花垣县| 叙永县| 渑池县| 那坡县| 霍林郭勒市| 义乌市| 莱阳市| 玛曲县| 那坡县| 潮州市| 邢台市| 岑巩县| 永嘉县| 康平县| 昭通市| 西贡区| 临城县| 广元市| 镇江市|