Python复制文件操作实例详解

Jun 10, 2016 pm 03:07 PM
python ファイルをコピーする

本文实例讲述了Python复制文件操作用法。分享给大家供大家参考,具体如下:

这里用python实现了一个小型的自动发版本的工具。这个“自动发版本”有点虚, 只是简单地把debug 目录下的配置文件复制到指定目录,把Release下的生成文件复制到同一指定,过滤掉不需要的文件夹(.svn),然后再往这个指定目录添加几个特定的文件。

这个是我的第一个python小程序。

下面就来看其代码的实现。

首先插入必要的库:

1

2

3

4

import os

import os.path

import shutil

import time, datetime

ログイン後にコピー

然后就是一大堆功能函数。第一个就是把某一目录下的所有文件复制到指定目录中:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

def copyFiles(sourceDir, targetDir):

   if sourceDir.find(".svn") > 0:

     return

   for file in os.listdir(sourceDir):

     sourceFile = os.path.join(sourceDir, file)

     targetFile = os.path.join(targetDir, file)

     if os.path.isfile(sourceFile):

       if not os.path.exists(targetDir):

         os.makedirs(targetDir)

       if not os.path.exists(targetFile) or(os.path.exists(targetFile) and (os.path.getsize(targetFile) != os.path.getsize(sourceFile))):

           open(targetFile, "wb").write(open(sourceFile, "rb").read())

     if os.path.isdir(sourceFile):

       First_Directory = False

       copyFiles(sourceFile, targetFile)

ログイン後にコピー

删除一级目录下的所有文件:

1

2

3

4

5

def removeFileInFirstDir(targetDir):

   for file in os.listdir(targetDir):

     targetFile = os.path.join(targetDir, file)

     if os.path.isfile(targetFile):

       os.remove(targetFile)

ログイン後にコピー

复制一级目录下的所有文件到指定目录:

1

2

3

4

5

6

7

def coverFiles(sourceDir, targetDir):

     for file in os.listdir(sourceDir):

       sourceFile = os.path.join(sourceDir, file)

       targetFile = os.path.join(targetDir, file)

       #cover the files

       if os.path.isfile(sourceFile):

         open(targetFile, "wb").write(open(sourceFile, "rb").read())

ログイン後にコピー

复制指定文件到目录:

1

2

def moveFileto(sourceDir, targetDir):

  shutil.copy(sourceDir, targetDir)

ログイン後にコピー

往指定目录写文本文件:

1

2

def writeVersionInfo(targetDir):

  open(targetDir, "wb").write("Revison:")

ログイン後にコピー

返回当前的日期,以便在创建指定目录的时候用:

1

2

3

4

5

6

7

8

9

10

def getCurTime():

   nowTime = time.localtime()

   year = str(nowTime.tm_year)

   month = str(nowTime.tm_mon)

   if len(month) < 2:

     month = '0' + month

   day = str(nowTime.tm_yday)

   if len(day) < 2:

     day = '0' + day

   return (year + '-' + month + '-' + day)

ログイン後にコピー

然后就是主函数的实现了:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

if __name__ =="__main__":

   print "Start(S) or Quilt(Q) \n"

   flag = True

   while (flag):

     answer = raw_input()

     if 'Q' == answer:

       flag = False

     elif 'S'== answer :

       formatTime = getCurTime()

       targetFoldername = "Build " + formatTime + "-01"

       Target_File_Path += targetFoldername

       copyFiles(Debug_File_Path,  Target_File_Path)

       removeFileInFirstDir(Target_File_Path)

       coverFiles(Release_File_Path, Target_File_Path)

       moveFileto(Firebird_File_Path, Target_File_Path)

       moveFileto(AssistantGui_File_Path, Target_File_Path)

       writeVersionInfo(Target_File_Path+"\\ReadMe.txt")

       print "all sucess"

     else:

       print "not the correct command"

ログイン後にコピー

希望本文所述对大家python程序设计有所帮助。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

XML形式を美化する方法 XML形式を美化する方法 Apr 02, 2025 pm 09:57 PM

XMLの美化は、合理的なインデンテーション、ラインブレーク、タグ組織など、本質的に読みやすさを向上させています。原則は、XMLツリーを通過し、レベルに応じてインデントを追加し、テキストを含む空のタグとタグを処理することです。 PythonのXML.ETREE.ELEMENTTREEライブラリは、上記の美化プロセスを実装できる便利なchile_xml()関数を提供します。

XML形式を開く方法 XML形式を開く方法 Apr 02, 2025 pm 09:00 PM

ほとんどのテキストエディターを使用して、XMLファイルを開きます。より直感的なツリーディスプレイが必要な場合は、酸素XMLエディターやXMLSPYなどのXMLエディターを使用できます。プログラムでXMLデータを処理する場合、プログラミング言語(Pythonなど)やXMLライブラリ(XML.ETREE.ELEMENTTREEなど)を使用して解析する必要があります。

XMLの変更にはプログラミングが必要ですか? XMLの変更にはプログラミングが必要ですか? Apr 02, 2025 pm 06:51 PM

XMLコンテンツを変更するには、ターゲットノードの正確な検出が必要であるため、プログラミングが必要です。プログラミング言語には、XMLを処理するための対応するライブラリがあり、APIを提供して、データベースの運用などの安全で効率的で制御可能な操作を実行します。

XMLをPDFに変換できるモバイルアプリはありますか? XMLをPDFに変換できるモバイルアプリはありますか? Apr 02, 2025 pm 08:54 PM

XMLをPDFに直接変換するアプリケーションは、2つの根本的に異なる形式であるため、見つかりません。 XMLはデータの保存に使用され、PDFはドキュメントを表示するために使用されます。変換を完了するには、PythonやReportLabなどのプログラミング言語とライブラリを使用して、XMLデータを解析してPDFドキュメントを生成できます。

携帯電話用の無料のXMLからPDFツールはありますか? 携帯電話用の無料のXMLからPDFツールはありますか? Apr 02, 2025 pm 09:12 PM

モバイルには、単純で直接無料のXMLからPDFツールはありません。必要なデータ視覚化プロセスには、複雑なデータの理解とレンダリングが含まれ、市場のいわゆる「無料」ツールのほとんどは経験がありません。コンピューター側のツールを使用したり、クラウドサービスを使用したり、アプリを開発してより信頼性の高い変換効果を取得することをお勧めします。

携帯電話でXMLをPDFに変換するとき、変換速度は高速ですか? 携帯電話でXMLをPDFに変換するとき、変換速度は高速ですか? Apr 02, 2025 pm 10:09 PM

Mobile XMLからPDFへの速度は、次の要因に依存します。XML構造の複雑さです。モバイルハードウェア構成変換方法(ライブラリ、アルゴリズム)コードの品質最適化方法(効率的なライブラリ、アルゴリズムの最適化、キャッシュデータ、およびマルチスレッドの利用)。全体として、絶対的な答えはなく、特定の状況に従って最適化する必要があります。

携帯電話でXMLをPDFに変換する方法は? 携帯電話でXMLをPDFに変換する方法は? Apr 02, 2025 pm 10:18 PM

携帯電話でXMLをPDFに直接変換するのは簡単ではありませんが、クラウドサービスの助けを借りて実現できます。軽量モバイルアプリを使用してXMLファイルをアップロードし、生成されたPDFを受信し、クラウドAPIで変換することをお勧めします。クラウドAPIはサーバーレスコンピューティングサービスを使用し、適切なプラットフォームを選択することが重要です。 XMLの解析とPDF生成を処理する際には、複雑さ、エラー処理、セキュリティ、および最適化戦略を考慮する必要があります。プロセス全体では、フロントエンドアプリとバックエンドAPIが連携する必要があり、さまざまなテクノロジーをある程度理解する必要があります。

XMLを画像に変換するプロセスは何ですか? XMLを画像に変換するプロセスは何ですか? Apr 02, 2025 pm 08:24 PM

XML画像を変換するには、最初にXMLデータ構造を決定し、次に適切なグラフィカルライブラリ(PythonのMatplotlibなど)とメソッドを選択し、データ構造に基づいて視覚化戦略を選択し、データのボリュームと画像形式を検討し、バッチ処理を実行するか、効率的なライブラリを使用して、最終的にPNG、JPEG、またはSVGに応じて保存します。

See all articles