web-dev-qa-db-ja.com

Python-ドキュメントxlsにシートが存在するかどうかを検証します

空き時間にxlsファイルをロードし、スキャンするドキュメント内のシートを選択する小さなプログラムを設計しようとしています。

ステップ1:ユーザーが.xlsファイルをインポートします。プログラムをインポートした後、ファイルが存在するかどうかを確認します。 (私にできること)

ステップ2:分析するドキュメントシートxlsの名前をユーザーに指定するように依頼します。そして、それはそれが止まるところです。プログラムは利用可能なシートを検出しません:(

#check if the document exist
while True:
    x = input("Give the name of the document in this repository__")
    input_filename = x + ".xls"
    if os.path.isfile(input_filename):
        print ("the document is been charged")
        break
    else:
        print("xls not found !")

#Load the document
xls_file = pd.ExcelFile(input_filename)

#Select the good sheet in file
print ("this is your sheets in this document",xls_file.sheet_names)
while True:
    feuilles = input("Select yout sheet")
    input_feuilles = feuilles
    if xls_file.sheet_names(input_filename):
        print ("The sheet is been charged !")
        break
    else:
        print("This sheet don't exist!")

ユーザーが記入したシートが実際に存在することを確認する方法が本当にわかりません。

6
Loman

Pythonライブラリ openpyxl はExcelの読み取りと書き込み用に設計されていますxlsx/xlsm/xltx/xltmファイル。次のスニペットコードは、特定のシート名が特定のブックに存在するかどうかを確認します。

PS:古いMicrosoft Excelファイルの場合(つまり、.xls)、代わりにxlrdxlwtを使用します。

from openpyxl import load_workbook

wb = load_workbook(file_workbook, read_only=True)   # open an Excel file and return a workbook

if 'sheet1' in wb.sheetnames:
    print('sheet1 exists')

次のコマンドでopenpyxlをインストールします。

$ Sudo pip install openpyxl
13
SparkAndShine

Pythonライブラリ xlsxwriter は、期待するすべてのフォーマットおよびグラフ作成機能を備えたExcelへの優れたインターフェイスを提供します。次のコードフラグメントは、ワークシートが存在するかどうかをチェックし、ワークシートを作成します。そうでない場合は、ワークシートオブジェクトを返します。

import xlsxwriter
workbook = xlsxwriter.Workbook(workbook_file)
worksheet = workbook.get_worksheet_by_name(worksheetName)
if worksheet is None:
    worksheet = workbook.add_worksheet(worksheetName)

次のコマンドでxlsxwriterをインストールします。

Sudo pip install xlsxwriter
1
Douglas Daly