ファイルの読み込みと処理
1. ファイルの読み込みと処理方法についての python
のファイルパスが存在するか確認し、存在しない場合は作成します。
#如果不存在路径,就创建一个这样的路径 if not os.path.exists(exp_path): os.mkdir(exp_path)
os.path.exists()
: 括弧内のファイルが存在するかどうかを確認します。括弧内のファイルはファイル パスになります。存在する場合は、 、 True を返し、存在しないため False を返しますos.mkdir()
: パス
2 を作成します。ファイル名をリストに並べます
file_list = os.listdir(dir_path)
3. 要件を満たさないファイルをフィルタリングします
filter()関数を使用してシーケンスをフィルタリングし、条件を満たさない要素を除外しますを返し、条件を満たす要素で構成されるシーケンスを返します。 新しいリスト
filter(function, iterable)
function
-- 判定関数。iterable
-- 反復可能なオブジェクト
def is_odd(n): return n % 2 == 1 newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) print(newlist)
[1, 3, 5, 7, 9]
4。タプルをリストに変換するために使用されます
list()
^(* ̄(oo) ̄)^
タプルとリストは非常に似ています。違いは、タプルの要素値は変更できないことです。
タプルは括弧内に、リストは角括弧内に配置されます
5. ファイル コーデックを開き、open()
情報を確認してください実験の結果、open()と同様の関数であることが分かりましたが、クローリングなどでデータを取得してファイルに書き込む場合、エンコードの不整合が問題となるため、一般的にはopen()に変換されます。 Unicode エンコーディング。
つまり、コーデックと open() を使用する方が便利です。
6. readlines()
毎回ファイルの内容全体を 1 行ずつ読み取り、読み取った内容をリストに入れて、リストの型を返します。
7、strip ()
毎回ファイルの内容全体を 1 行ずつ読み取り、読み取った内容をリストに入れてリスト型を返します
Python ファイル処理 (概要)
1. txtファイル
1.1 txtファイルの読み込み
with open("11.txt", 'r') as file: for l in file: idnos.append(l.replace('\n','')) f.close() # 关闭文件,这个可以是个好习惯哦
1.2 txtを上書きせずに書き込む
with open("d.txt", 'a',encoding='utf-8') as file: file.write('\n' + '摘要:' + gaiyao) file.write('\n') file.close()
1.3 各ファイルラベルの意味
アクセス モード | 説明 |
---|---|
ファイルを読み取り専用で開きます。ファイル ポインタはファイルの先頭に配置されます。これがデフォルトのモードです。 | |
書き込み専用のファイルを開きます。ファイルがすでに存在する場合は上書きされます。ファイルが存在しない場合は、新しいファイルを作成します。 | |
追加するファイルを開きます。ファイルがすでに存在する場合、ファイル ポインタはファイルの末尾に配置されます。言い換えれば、新しいコンテンツは既存のコンテンツの後に書かれます。ファイルが存在しない場合は、書き込み用に新しいファイルを作成します。 | |
ファイルを読み取り専用としてバイナリ形式で開きます。ファイル ポインタはファイルの先頭に配置されます。これがデフォルトのモードです。 | |
書き込み専用のバイナリ形式でファイルを開きます。ファイルがすでに存在する場合は上書きされます。ファイルが存在しない場合は、新しいファイルを作成します。 | |
追加するファイルをバイナリ形式で開きます。ファイルがすでに存在する場合、ファイル ポインタはファイルの末尾に配置されます。言い換えれば、新しいコンテンツは既存のコンテンツの後に書かれます。ファイルが存在しない場合は、書き込み用に新しいファイルを作成します。 | |
読み取りと書き込みのためにファイルを開きます。ファイル ポインタはファイルの先頭に配置されます。 | |
読み取りと書き込みのためにファイルを開きます。ファイルがすでに存在する場合は上書きされます。ファイルが存在しない場合は、新しいファイルを作成します。 | |
読み取りと書き込みのためにファイルを開きます。ファイルがすでに存在する場合、ファイル ポインタはファイルの末尾に配置されます。ファイルは追加モードで開かれます。ファイルが存在しない場合は、読み取りおよび書き込み用に新しいファイルが作成されます。 | |
読み取りおよび書き込みのためにファイルをバイナリ形式で開きます。ファイル ポインタはファイルの先頭に配置されます。 | |
ファイルをバイナリ形式で開き、読み取りと書き込みを行います。ファイルがすでに存在する場合は上書きされます。ファイルが存在しない場合は、新しいファイルを作成します。 | |
追加するファイルをバイナリ形式で開きます。ファイルがすでに存在する場合、ファイル ポインタはファイルの末尾に配置されます。ファイルが存在しない場合は、読み取りおよび書き込み用に新しいファイルが作成されます。 |
#coding=utf-8 f = open('11.txt', 'r') content = f.readlines() print(type(content)) i=1 for temp in content: print("%d:%s" % (i, temp)) i += 1 f.close()
1.5 txt の最初の 2 行の内容を読み取ります
#coding=utf-8 f = open('11.txt', 'r') content = f.readline() print("1:%s" % content) content = f.readline() print("2:%s" % content) f.close()
1.6 ファイルのコピー
# 提示输入文件 oldFileName = input("请输入要拷贝的文件名字:") # 以读的方式打开文件 oldFile = open(oldFileName,'rb') # 提取文件的后缀 fileFlagNum = oldFileName.rfind('.') if fileFlagNum > 0: fileFlag = oldFileName[fileFlagNum:] # 组织新的文件名字 newFileName = oldFileName[:fileFlagNum] + '[复件]' + fileFlag # 创建新文件 newFile = open(newFileName, 'wb') # 把旧文件中的数据,一行一行的进行复制到新文件中 for lineContent in oldFile.readlines(): newFile.write(lineContent) # 关闭文件 oldFile.close() newFile.close()
1.7 ファイル関連の操作
ファイル名の変更
import os os.rename("毕业论文.txt", "毕业论文-最终版.txt")
ファイルの削除
import os os.remove("毕业论文.txt")
フォルダーの作成
import os os.mkdir("张三")
現在のファイルの取得ディレクトリ
import os os.getcwd()
デフォルトのディレクトリの変更
import os os.chdir("../")
ディレクトリリストの取得
import os os.listdir("./")
フォルダの削除
import os os.rmdir("张三")
1.8 ファイル管理 - 学生管理システム
注意: 最初にファイルを作成します: info_data.data
import time import os # 定一个列表,用来存储所有的学生信息(每个学生是一个字典) info_list = [] def print_menu(): print("---------------------------") print(" 学生管理系统 V1.0") print(" 1:添加学生") print(" 2:删除学生") print(" 3:修改学生") print(" 4:查询学生") print(" 5:显示所有学生") print(" 6:保存数据") print(" 7:退出系统") print("---------------------------") def add_new_info(): """添加学生信息""" global info_list new_name = input("请输入姓名:") new_tel = input("请输入手机号:") new_qq = input("请输入QQ:") for temp_info in info_list: if temp_info['name'] == new_name: print("此用户名已经被占用,请重新输入") return # 如果一个函数只有return就相当于让函数结束,没有返回值 # 定义一个字典,用来存储用户的学生信息(这是一个字典) info = {} # 向字典中添加数据 info["name"] = new_name info["tel"] = new_tel info["qq"] = new_qq # 向列表中添加这个字典 info_list.append(info) def del_info(): """删除学生信息""" global info_list del_num = int(input("请输入要删除的序号:")) if 0 <= del_num < len(info_list): del_flag = input("你确定要删除么?yes or no") if del_flag == "yes": del info_list[del_num] else: print("输入序号有误,请重新输入") def modify_info(): """修改学生信息""" global info_list modify_num = int(input("请输入要修改的序号:")) if 0 <= modify_num < len(info_list): print("你要修改的信息是:") print("name:%s, tel:%s, QQ:%s" % (info_list[modify_num]['name'], info_list[modify_num]['tel'],info_list[modify_num]['qq'])) info_list[modify_num]['name'] = input("请输入新的姓名:") info_list[modify_num]['tel'] = input("请输入新的手机号:") info_list[modify_num]['qq'] = input("请输入新QQ:") else: print("输入序号有误,请重新输入") def search_info(): """查询学生信息""" search_name = input("请输入要查询的学生姓名:") for temp_info in info_list: if temp_info['name'] == search_name: print("查询到的信息如下:") print("name:%s, tel:%s, QQ:%s" % (temp_info['name'], temp_info['tel'], temp_info['qq'])) break else: print("没有您要找的信息....") def print_all_info(): """遍历学生信息""" print("序号\t姓名\t\t手机号\t\tQQ") i = 0 for temp in info_list: # temp是一个字典 print("%d\t%s\t\t%s\t\t%s" % (i, temp['name'], temp['tel'], temp['qq'])) i += 1 def save_data(): """加载之前存储的数据""" f = open("info_data.data", "w") f.write(str(info_list)) f.close() def load_data(): """加载之前存储的数据""" global info_list f = open("info_data.data") content = f.read() info_list = eval(content) f.close() def main(): """用来控制整个流程""" # 加载数据(1次即可) load_data() while True: # 1. 打印功能 print_menu() # 2. 获取用户的选择 num = input("请输入要进行的操作(数字):") # 3. 根据用户选择,做相应的事情 if num == "1": # 添加学生 add_new_info() elif num == "2": # 删除学生 del_info() elif num == "3": # 修改学生 modify_info() elif num == "4": # 查询学生 search_info() elif num == "5": # 遍历所有的信息 print_all_info() elif num == "6": # 保存数据到文件中 save_data() elif num == "7": # 退出系统 exit_flag = input("亲,你确定要退出么?~~~~(>_<)~~~~(yes or no) ") if exit_flag == "yes": break else: print("输入有误,请重新输入......") input("\n\n\n按回车键继续....") os.system("clear") # 调用Linux命令clear完成清屏 # 程序的开始 main()
2. csv ファイル操作
2.1 csv 書き込み
with open('新1.csv', 'a', encoding='utf-8-sig', newline='') as f: csv_writer = csv.writer(f, delimiter=',') csv_writer.writerow( [str(name), str(zijin), str(guimo), str(jingli), str(phone1), str(phone2),str(chanpin)])
以上がPython ファイルをロードして処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Pythonは、自動化、スクリプト、およびタスク管理に優れています。 1)自動化:OSやShutilなどの標準ライブラリを介してファイルバックアップが実現されます。 2)スクリプトの書き込み:Psutilライブラリを使用してシステムリソースを監視します。 3)タスク管理:スケジュールライブラリを使用してタスクをスケジュールします。 Pythonの使いやすさと豊富なライブラリサポートにより、これらの分野で優先ツールになります。

限られた時間でPythonの学習効率を最大化するには、PythonのDateTime、時間、およびスケジュールモジュールを使用できます。 1. DateTimeモジュールは、学習時間を記録および計画するために使用されます。 2。時間モジュールは、勉強と休息の時間を設定するのに役立ちます。 3.スケジュールモジュールは、毎週の学習タスクを自動的に配置します。

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

ドリームウィーバー CS6
ビジュアル Web 開発ツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。
