すみません、何か事前に対応しないといけないことが抜けていると思われますが、わかりませんので教えていただけないですか。 動画の9:06時点で違うエラーとなっており、データフレームにappendの属性がないと出てきてしまいます。 「AttributeError: 'DataFrame' object has no attribute 'append'. Did you mean: '_append'?」
動画のように、 def 関数名 -> (戻り値1, 戻り値2, 戻り値3) とすると、 Tuple expression not allowed in type annotation Use Tuple[T1, ..., Tn] to indicate a tuple type or Union[T1, T2] to indicate a union type", と出ます(VScodeを使用しています)。 無視して実行すると、問題なく動いているようなのですが、放置していても大丈夫ですか? 素人丸出しの質問ですみません……
※ 訂正
14:14ごろに記載している、複数戻り値のタイプアノテーションの書き方が正確ではありませんでした😵
以下のようにTupleを使うのが正確な書き方になります!
=====================
from typing import Tuple
def get_invoice_data(file_path: Path) -> Tuple[datetime.date, str, int]:
実際にプログラムを作成するときの試行錯誤を解説してくれる人はあまりいないので、勉強になります!
ありがとうございます😊
リファクタリングの過程とか、エラー出力時の対応とかも含めて、もっと実践的な動画をどんどん出していこうと考えてます!
まずは動作させるProg→リファクタリングの考え方が大変勉強になりました。ありがとうございます。
コメントありがとうございます!この動画がお役に立っていたら嬉しいです😊
Pythonは独学で書いてきたけど、他の人ってどんな感じで書いてるんだろうと思ってサジェストに出てたこの動画観てみましたが、とても分かりやすかったですし、再勉強するのにちょうど良いなーと思いました
チャンネル登録させていただきました!
参考にさせていただきます!
関数の切り出しをしてリファクタリングする所参考にします😊
サプーさんの動画を見てると過去動画の技術をきちんと折り込んでくれるので、復習できて自分もステップアップできてるなと実感できます!
こんな風に実践動画を出してくれるのとても楽しみです♪
ご視聴いただきありがとうございます😊
一気にコードを書くと言うより、試行錯誤しながらコードを作り上げる過程をお見せできたら、みなさんのお役に立つ動画になるんじゃないかなぁーと思って、今回はちょっと挑戦的な動画を出してみました!!
今後も実践系の動画を出していきますね✨
❶3/18Pythonの作業画面があって分かりやすい。他の動画も見てみる🔥
勉強になりました。
ありがとうございました😊
素晴らしい動画ですね。とても勉強になります。最近、会社で部署異動になりExcelを多用するので、効率的に仕事ができないか模索しております。これを機にPythonで仕事を効率的にやっていきたいです。
ご視聴いただきありがとうございます!
ExcelをPythonから自動化できると仕事のスピードUPに繋がると思うので、ぜひ参考にしてもらえたら嬉しいです😊
まだ、pythonを始めたばかりの超 初心者ですが、ようやくこの場所で進んでいけそうな気がします。Excelのマクロですこし自動化の経験はありますがこれからの道のりは厳しそうですが、頑張っていきたいと思います。ここに出会えてよかったと思います。
コメントありがとうございます😊
マクロも便利ですが、Pythonは他のシステムとの連携も容易にできるので、ぜひ色々試してみてください!このチャンネルは初心者向けになっているので、気になるトピックの動画を色々見てもらえたら嬉しいです✨
とてもわかりやすかったです。
docstringの動画も楽しみです!
ご視聴いただきありがとうございます😊
docstringは近々出そうと思ってるので、もう少々お待ちください!
今回、ちょっと音が反響してて聞きにくいかもです...😵
appendに代わるやり方を教えてください。appendが使えずにこまってます
🫂めちゃくちゃ感謝!!
この動画がお役に立てていたら嬉しいです😊
@@pythonvtuber9917 😊いやいやいや、こちらこそ!
同じ作業して練習したいと思ったのですが、このサンプルのエクセルファイルをいただくことは可能でしょうか?
動画で使用されているサンプルファイルはどこから取得できますか?
請求書がPDFだった場合は、金額や会社名を1つのエクセルファイルに一覧表としてまとめることはできますか?
PDFの操作については以下の動画で解説しています!こちらを使えば出来ると思います!
th-cam.com/video/1sjSCH9DhsY/w-d-xo.html
@@pythonvtuber9917 ありがとうございます!好きです!
すみません、何か事前に対応しないといけないことが抜けていると思われますが、わかりませんので教えていただけないですか。
動画の9:06時点で違うエラーとなっており、データフレームにappendの属性がないと出てきてしまいます。
「AttributeError: 'DataFrame' object has no attribute 'append'. Did you mean: '_append'?」
moduleNotFoundError:No module named 'openpyxl'になり困ってます 解決策を教えてください
ModuleNotFoundError: No module named 'pandas'にもなり インストールはできていますが
import pandas as pdとか冒頭ですればよいのでは…?👀
必要なモジュールが足りないっぽい😂
8:18のところで
df = df.append(日付など)
と書いてますがこれの代わりに
df.append(日付など)
だけで書いてもいいのでしょうか。一見すると代入文にする必要はないように見えます
ご質問ありがとうございます!鋭い質問ですね✨
実はDataFrameのappendは非破壊的なメソッドのため、元のオブジェクトは変更せずに、戻り値で変更されたオブジェクトが取得できます。そのため、代入が必要です😉
一方、Pythonのリストのappendは破壊的なメソッドのため代入は不要です。似ているので、すごく紛らわしいですよね...😇
@@pythonvtuber9917
よくわかりました。ありがとうございます!
appendが非推奨と出ますので別の方法も知りたいです
VBAでは出来ずPythonなら出来るExcel処理はありますか?
VBAはある程度扱えるのでPythonでないと出来ないところを学びたいです
ご質問ありがとうございます!
私はVBAを使ったことがないのですが、知識として知る限り、基本的にはVBAで出来ないExcel操作はないと思います😉
いつも勉強させていただいてます。有り難うございます
質問ですすべての値が出力できず、歯抜けになることがあります。何が原因ですか
ご質問ありがとうございます!
「歯抜け」とは具体的にどんな出力でしょうか?ソースコードなど共有いただけたら、もう少し明確に回答できるかと思います!
フム😃
この技術と
ビューティフルスープ?等の
抽出技術を組み合わせれば
ネット上の必要なデータを
白書のExcelに書き込むも可能と?
そうですね!スクレイピングのライブラリと組み合わせれば、ネット上のデータもExcelに出力することができます😊
いろんなライブラリを組み合わせて使うと、とっても便利で面白いスクリプトが作れますね!
@@pythonvtuber9917
申し訳ございません
今回の動画とは関係ないのですが
If文と例外処理を使って
「意図的」にエラーを起こす事は可能ですか?
例えば
1と入力されたら
インデックスエラーを起こすようにとか
意図的にエラーを起こすことは可能です!
assertを使うかraiseで例外送出する方法の2つが考えられますね😊
両方ともサプーのチャンネル内では解説動画を出していないのですが、assertについては近々やりたいな、と思っていたのでもう少々お待ちいただけたらと思います!例外送出はやるタイミングを失っているものの、いずれやりたいと思ってます!!
@@pythonvtuber9917
かしこまりました(*^^*)
@@pythonvtuber9917
明日ライブ見に行きます(`・ω・´)キリッ
こういうのってできるまでに独学で何時間Pythonを勉強したらいいのでしょうか
時間はちょっと分からないですが、数ヶ月ぐらいプログラミングをしていたらできるようになるんじゃないかな?と思いました!
@@pythonvtuber9917 なるほど!最近Pythonの勉強初めて独学で週に20時間ほどやっているのですが、勉強方法が定まらず成長している感じがしません。そこでもしおすすめの勉強方などあれば教えていただきたいです。
勉強方法などについてはメンバーシップの方でお話ししているので、よければご検討ください!
こんにちは、例えば自分のパソコンで開発しましたら、他のパソコンはPythonがない場合は起動できることが可能ですか?
PythonがインストールされてないとPythonで作ったプログラムは動かないのですがexeにするツールなどを使うとPythonがインストールされてない環境でも動くケースがあります!
exe化ツールのPyinstallerについても説明している動画があるので、よければ参考にしてみてください!
▶︎ th-cam.com/video/dt7uuKztjjQ/w-d-xo.html
@@pythonvtuber9917 ありがとうございます。大変勉強になりました
栄光ゼミナール Python language is automaton. Dislude continious.
動画のリクエストです
あるライブラリのドキュメントを読んだらスタティックメソッドというのが出てきたのですがなんなのかよくわかりません。サプーにスタティックメソッドの解説をお願いしたいです。
ご要望ありがとうございます!
スタティックメソッド、検討してみますね😉 すぐには出せないと思うので、少々お待ちいただけたらと思います!
@@pythonvtuber9917 ありがとうサプー!
MSofficeたかいっすからリブレオフィスはダメっすかね?
いいと思います!
@@pythonvtuber9917 大変謝謝!!
このexcel操作はMacのexcelもできますか、またフィルのパスがone driveにあってもできるんですか
いきなりの質問ですが、宜しくお願いします
MacのExcelでも操作出来ますよ!One DriveについてはMac側にアプリなどでマントされている状態であれば、普通のファイルと同じように扱えます!
返信ありがとうございます。助かります
もう一点 vscodeで実際プログラミングしてますが、実行してもエラーも出ずにプリントもされない事があります。
どう対応したらいいのでしょうか
動かしたいコードがそもそも動いていないのか、それともprint文まで処理が到達せずにすり抜けてるのかを切り分けるために、import文より上の1行目にprint('start')みたいにprint文を書いてから実行してみてはいかがでしょうか?もしもそれで、「start」が表示されないなら、そもそも動かしたいと思っているPythonファイルじゃないファイルが指定されているかもしれませんね。
startは表示されますが、実行隅になっているので対処法がわかりません
startが表示されるということは、スクリプト自体は動いていますね!多分、動かしたい処理の部分まで到達していないんだと思います。
私がよくやらかしちゃうのは if __name__ == '__main__': の部分が間違ってアンダースコア1つになってしまっていたり、if文の条件のTrue とFalseが逆になっていたりします。そういう小さいミスで実行したい処理ができていない可能性はないですかね?もしよければコードを共有していただけたら私の方でも確認できるのですが...
動画のように、
def 関数名 -> (戻り値1, 戻り値2, 戻り値3)
とすると、
Tuple expression not allowed in type annotation
Use Tuple[T1, ..., Tn] to indicate a tuple type or Union[T1, T2] to indicate a union type",
と出ます(VScodeを使用しています)。
無視して実行すると、問題なく動いているようなのですが、放置していても大丈夫ですか?
素人丸出しの質問ですみません……
ご質問ありがとうございます!!
私の戻り値のタイプアノテーションの書き方が正確ではなかったです😵
以下のように書き直していただけると、警告が出ないかと思います😊
ご指摘ありがとうございます✨
=========
from typing import Tuple
def get_invoice_data(file_path: Path) -> Tuple[datetime.date, str, int]:
=========
返信ありがとうございます!上手く行きました!
ありがとうございました!
とても参考になる動画ありがとうございます!
以前、フォルダ内の大量のExcelファイルから特定の単語を検索するというのをVBAで作った(というかネットのコードをほぼコピペした😅)んですが、実行時間が長くて使い物になりませんでした。
おそらくExcelファイルを一つ一つ開いているので時間がかかったんじゃ無いかと思いますが・・・
そういった類いの処理はPythonだったら高速に実行できたりしますかね?
実際にやってみないと分からないですが、VBAよりPythonのほうが速い気がします!
Excel操作はPythonからでもサクサクできるので、ぜひ機会があれば使ってみてください😉
Excelのセルのコメントの内容をpythonで取得することは出来ますか?
ご質問ありがとうございます!
私はやったことがないのですが、OpenPyXLのセルのcomment.textにアクセスすると取得できるみたいですね!
サンプルコード ▶︎ qiita.com/rihu-do/items/25c0623cd81228054724
OpenPyXLの動画 ▶︎ th-cam.com/video/Pgfw9DimHoQ/w-d-xo.html
勉強になりました。ありがとうございます。
最後に以下のエラーが出てきました。いろいろと調べてみたが、なかなか解決できません。
解決方法をご教授していただけないでしょうか。
--------- --------- ---------
File "D:\01_Python\01_PJ\test\demo.py", line 13, in get_invoice_data
inv_datetime.year,
AttributeError: 'NoneType' object has no attribute 'year'
--------- --------- ---------
ご質問ありがとうございます!
「Noneだからyearっていう属性がないよ」ってエラーが出ているので、inv_datetimeにオブジェクトが何も代入されておらず、Noneになっているんだと思います!Excelファイルの1シート目のH4セルにデータが入っていて、inv_datetimeの変数にきちんとデータが代入できているか確認してみてください😉