光day4

ファイル処理

文字コード

コンピュータの基礎ディアン

046-文字エンコーディング - ?基本的なコンピュータの.png X-OSS-プロセス=スタイル/透かし

任意のアプリケーションは、ハードウェアの動作を行うために、オペレーティング・システムによって、その後の要求は、オペレーティングシステムの起動システムを呼び出すために必要なハードウェアを動作させること、および

第二に、原則ディアンテキストエディタ、ファイルへのアクセス

1.エディタを書き込むエディタでそうコンテンツ、メモリ内にある、プロセスを開始するために開かれ、また、メモリに停電後のデータ損失が記憶されています。

ハードディスクへのブラシエディタメモリのデータ:2が永久的に保存するには、[保存]ボタンをクリックする必要があります。

3.私たちが書くPYファイル(なし実行)、その他の書類の作成と違いはありません、それだけで文字のみの束を書いています。

PYファイルを実行するための原理水とPyhthon通訳

- 第一段階:Pythonインタプリタは、この時点で開始し、テキストエディタを起動することと等価です。

- 第二段階:に読み込まtest.pyハードディスクの内容上のファイルからファイルをINGのtest.pyのディスクからテキストエディタ、test.pyプレイファイルへのPythonインタプリタと同等。

- 第三段階:Pythonインタプリタは単にメモリtest.pyコードにロード解釈されます。(詩:この段階では、それがコードの時に実際の実装では、名前=「エゴン」に実行されたときに、文字列「エゴン」のためのメモリ空間を開きますPythonの実行可能ファイル内のコードを構文を認識します)

類似点と4ディアンPythonインタプリタと、この文書の編集者との違い

〜同じポイント:Pythonインタプリタは、テキストエディタと同じですPYファイル機能を、読んだことがあるので、Pythonインタプリタは、ファイルの内容を解釈しています。

- 違い:表示するためまたは編集中のテキストエディタ、メモリへのファイルの内容は、Pythonの構文を気にしないが、PythonインタプリタはありませんあなたのPythonコードで覗き見を与えるために、メモリに内容を提出します何が、Pythonの構文を識別し、Pythonのコードを実行するために書きました。

五、シリアル番号

〜ユニコードが生成伝統的な文字コード体系の制限に対処することであり、それは16の最小値を表すために文字や記号にもかかわらず、各文字について各言語の統一と一意のバイナリエンコーディングを設定する(2バイト)、すなわち:16 = 65536 ** 2、注意:ここでは、おそらくより2バイトの最小値を言うことです。

〜UTF-8、Unicodeは、コードを圧縮して最適化されて、彼はもはや最低限のセクションを使用して2つのバイトを使用していますが、分類されたすべての文字と記号:保存された1バイトのASCIIコードの内容、ヨーロッパ保存された文字の2つのバイトは、東アジアの文字は3つのバイトを保存します。

046-およびUnicode文字エンコーディング変換-utf8の.png?X-OSS-プロセス=スタイル/透かし

どのような文字エンコーディング標準によると、我々は基準デコードに従わなければなりません。

何が書かれているコードのコードを開きます。

3違いPython2と文字エンコーディング

python2デフォルトのエンコードインタプリタASCII
のpython3のデフォルトのエンコードインタプリタのUTF-8へ

3つのファイルを開きます

R:読み取り専用

f.read()

W:書き込みを空にした後(存在しないファイルを作成します)

f.weite()

:追加(ファイルが自動的に作成存在しません)

f.write()

テキストモード:トン

バイナリモード:B

T / Bは、単独で使用することはできず、R / W /のみ使用することができます

ファイル管理コンテキストで

Fなど)(オープンで:#は自動的に閉じます

pyInstallerの使用

INSTAL pyInstallerのピップ

フォルダのパスを切り替え(フォルダには、2つのファイルがtest.py img.icoと含まれています)

pyInstallerの-i img.ico -F test.py

高度なアプリケーションファイル

アドバンスモードを開きます。

  1. R +:読み取りおよび書き込み、ファイルポインタが最後であります

  2. W +:読み取りおよび書き込み、空のファイル(強く推奨されません)

  3. +:読み書き可能

ファイルの高度な方法

  1. 求める:バイト単位
  2. 教えて:バイト単位
  3. (n)を読み出す:バイト
  4. truancate:バイト単位

RBモードにより、

```python
# with open('test.py', 'rb') as fr:
    # fr.seek(1, 0)  # 0是从文件头开始,走1个字节
    # fr.seek(1, 1)  # 1是从当前位置开始,走1个字节
    # fr.seek(1, 2)  # 2是从文件末开始,走1个字节
    # fr.seek(0, 2)  # 2是从文件末开始,走1个字节  # 定位到文件末尾
    # print(f'fr.tell():{fr.tell()}')  # 告诉你当前指针的位置
    # print(fr.read())  # 中 --> \xe4\xb8\xad


# with open('test.py', 'a+b') as fa:
#     fa.truncate(1)


with open('test.py', 'rt',encoding='utf8') as fr:
    print(fr.read(3))  # 3个字符
```

還元法ファイル

地域の歴史

ファイルを変更するには2つの方法

この文書では、その唯一の適用範囲を変更しません。

with open ('tset.py','r+',endcoding='utf8') as fr:
    fr.seek(3)
    fr.write('中')
    fr.flush()   #如果不加flush短暂的停留在内存中,然后再刷入硬盘。
            #如果加了会更快速刷入硬盘       
with open ('tset.py','r',encoding='utf8') as fr,\
        open('tset_swap.py','w',encoding='utf8') as fw:
       data = fr.read()
       data = data.repalce('sb','dsb')
       fw.write(data)
       
       import os
       
       os.remove('tset.py')
       os.remove('tset_swap.py','test.py')

おすすめ

転載: www.cnblogs.com/shiqizz/p/11355017.html