2022年12月22日Pythonの上達のコツは、何をおいても実際にプログラムを作成していくことです。実践的でもなく、役にも立たない、そんな機能開発だって、全く問題ありません。つくったことがないと、一体何をつくったらいいのやら迷ってしまいますよね。超簡易的な家計簿アプリの作成に挑戦してみようと思います。完成形はこんな感じです。Python上で質問に答えると、スプレッドシートが入力されていく家計簿です。APIの設定さえできれば、すぐに完成できます。Pythonを上達させたい初心者の方が、ちょっとした達成感を得るためには程よい内容かと思います。楽しんで読んでみてください。そちらは過去に解説をしているので、以下の記事を参照しください。今回は、Pythonからスプレッドシートに自動入力する機能を開発していきます。下記のスプレッドシートを準備しました。見ての通り項目は3つだけです。金額スプレッドシート名:housekeepingシート名:sheet13つの質問を設定Python上で、3つの質問に答える仕様にしていきます。答えをスプレッドシートのC列に記入Pythonのスクリプト【Gspreadの連携】inquirerのインストール今回は、質問2でinquirerの機能を使います。以下のコマンドでインストールしましょう。inquirerPoetryを使っている場合は、こちらです。inquirerスプレッドシートの連携ここまでは通常通りなので、特に問題ないかと思います。補足が必要な方は、以下のページの「Pythonのスクリプト作成」の項目で解説をしています。sh.sheet1Pythonのスクリプト【家計簿の作成】Pythonでスプレッドシートの最終行を取得Pythonでスプレッドシートの最終行を取得するための設定を行います。家計簿アプリなので、書き込むたびに下の行にデータが積み上がらないといけませんよね。こんなふうにならないための作業です。Numberは最大値+1とする。1print(NEW_NUMBER)sheet1.col_values(1)の意味は?sheet1.col_values(1)は、シートの1列目にあるすべての値を意味しています。A_COL_ARRAYの変数には、1列目のすべての値をリスト形式で持っているのです。1の意味は?NEW_NUMBERの変数には、1列目の数+1、つまり最終行の次の行の値です。意味は?update_cellはスプレッドシートを上書きする機能です。引数には、行(数)、列(数)、バリュー(セルに入れたい値)の順番で入力します。inquirer.ListPythonで複数の選択肢をつくるには、inquireを使うのが便利です。choicesの中身を変更すれば、自由に選択肢を変更できます。Numberは最大値+1とする。purchase_record()実行結果Pythonを実行するとこんな質問をされました。(質問への回答もそのまま記載しています。交通費いくらでしたか?:680680それでは、スプレッドシートをチェックしてみます。最後まで、作成できましたでしょうか。初心者レベルの僕にとっては、この程度でも機能を本当に達成感を感じます。Python上達にはさまざまなプログラムを書いてみることが重要です。参考にしていただけると嬉しいです。【GAS】Pythonで、スプレッドシートの最終行に自動入力して更新する方法この記事を書いた人クリワン節約に励むマーケターです!30歳を機に別職種から、マーケターにキャリアチェンジ。IT企業で専任のマーケターをしています。‘SequentialFeatureSelector’の対処法|sklearnのImportError最近のコメント表示できるコメントはありません。