質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

ダイアログ

ユーザーにウィンドウやボックス等の形で個別で表示されるフォームであり、ユーザーに判断を促す目的で表示される。ユーザーが見逃す事のないよう、操作中のフォーム上にポップアップして表示される。

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

Q&A

0回答

1458閲覧

tkinterのダイアログファイルのパスを引数として扱う

11390

総合スコア20

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

ダイアログ

ユーザーにウィンドウやボックス等の形で個別で表示されるフォームであり、ユーザーに判断を促す目的で表示される。ユーザーが見逃す事のないよう、操作中のフォーム上にポップアップして表示される。

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

0グッド

0クリップ

投稿2019/11/08 07:48

編集2022/01/12 10:55

現在tkinterを用いてダイアログを開いています。
ファイルのパスは取得したのですが、このファイルをf1,f2に代入したいです。
どうすればよいでしょうか?

import matplotlib.pyplot as plt import numpy as np import os import tkinter from tkinter import messagebox from tkinter import filedialog root = tkinter.Tk() root.title('微笑山') #タイトル root.geometry('400x200') #サイズ 横x縦 #selctボタンを押したときの処理 def select_click(): messagebox.showinfo('select','真のデータ') messagebox.showinfo('select','測定データ') fileType = [('Excelファイル','*.txt')] #ファイルタイプをExcelファイルに指定 fileType = [('Excelファイル','*.txt')] #ファイルタイプをExcelファイルに指定 iniDir1 = os.path.abspath(os.path.dirname(__file__)) #初期表示フォルダ iniDir2 = os.path.abspath(os.path.dirname(__file__)) #初期表示フォルダ filepath1 = filedialog.askopenfilename(filetypes=fileType,initialdir = iniDir1) filepath2 = filedialog.askopenfilename(filetypes=fileType,initialdir = iniDir2) messagebox.showinfo('選択したファイル',filepath1) messagebox.showinfo('選択したファイル',filepath2) #ボタンを作成 selectButton = tkinter.Button(root, text='fast Select',command=select_click) selectButton.pack() root.mainloop() x1_list=[] # data1格納用のx_listを定義 z1_list=[] # data1格納用のz_listを定義 x2_list=[] # data2格納用のx_listを定義 z2_list=[] # data2格納用のz_listを定義 f1=open(filepath1,"r") f2=open(filepath2,"r") # プロットしたいデータが入っているファイルをr(読み込み) t(テキスト)モードで読み込む #data1読み込み for line in f1: data1 = line[:-1].split(' ') x1_list.append(float(data1[0])) z1_list.append(float(data1[1])) #data2読み込み for line in f2: data2 = line[:-1].split(' ') x2_list.append(float(data2[0])) z2_list.append(float(data2[1])) ## plt.xlabel('X') # x軸のラベル plt.ylabel('Z') # y軸のラベル plt.plot(x1_list, z1_list, color="White", alpha=0.8, linewidth=4.0, label="data1") plt.plot(x2_list, z2_list, color="White", alpha=0.8, linewidth=4.0, label="data2") plt.legend() plt.fill_between(np.append(x1_list, x2_list[::-1]), np.append(z1_list, z2_list[::-1]),where=z2_list>=z1_list, facecolor='green', interpolate=True)#二線の間の色を表す plt.fill_between(np.append(x1_list, x2_list[::-1]), np.append(z1_list, z2_list[::-1]),where=z2_list<=z1_list,facecolor='red', interpolate=True)#二線の間の色を表す

エラー

Traceback (most recent call last): File "<ipython-input-1-32532a3f4e19>", line 1, in <module> runfile('C:/Users/Administartor/Desktop/いいべ.py', wdir='C:/Users/Administartor/Desktop') File "C:\Users\Administartor\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 705, in runfile execfile(filename, namespace) File "C:\Users\Administartor\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile exec(compile(f.read(), filename, 'exec'), namespace) File "C:/Users/Administartor/Desktop/いいべ.py", line 38, in <module> f1=open(filepath1,"r") NameError: name 'filepath1' is not defined

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問