この記事を読むことで、Pythonで最も基本的な標準入力の書き方を学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。
このコーナーでは、学習コンテンツpaizaラーニングのレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。
GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。
paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験
paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。
問題:半角スペースを含まない文字列 s が 1 行で与えられるので、そのまま出力してください。
今回は、下記の入出力例3を用います。
入力例3
paiza813
出力例3
paiza813
ではまず、Pythonで解いてみます。
今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。
■ Pythonでの解き方 ■
手順として、
1:標準入力で文字列を取得する
2:取得した文字列を出力する
の2ステップで、行います。
まず、準備として、paiza.ioにこのように入力します。
(入力例3をコピペしたのみ)
コードは下記になります。
#標準入力で文字列を取得する
s=input()
#取得した文字列を出力する
print(s)
プログラムを実行した出力結果です。
■ GASでの解き方 ■
今度は、同じ問題をGASで解いてみます。
まず、スプレッドシートにこの様に配置しました。
緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。
※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※
手順はこのようになります。
1:SpreadSheetAppから階層を辿って現在のシートにアクセスする
2:緑色のセルの所を取得して定数sに格納する
3:定数sに格納出来たことをログ出力で確認する
4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
5:pushメソッドでs2にsを2次元配列として追加する
6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
7:スプレッドシートの黄色いセルに出力する
手順1: SpreadSheetAppから階層を辿って現在のシートにアクセスする
const ss = SpreadsheetApp.getActiveSheet();
ここで定数ssにSpreadsheetAppから階層を辿ってアクティブシートにアクセスしています。
手順2:緑色のセルの所を取得して定数sに格納する
s = ss.getRange(1, 2).getValue();
手順3:定数sに格納出来たことをログ出力で確認する
console.log(s);
手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
let s2 = [];
手順5:pushメソッドでs2にsを2次元配列として追加する
s2.push([s]);
手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
console.log(s2);
手順7:スプレッドシートの黄色いセルに出力する
ss.getRange(3, 2).setValue(s2);
実行後のスプレッドシートです。
GASでの全コードはこちらになります。
function standardInput09() {
//SpreadSheetAppから階層を辿って現在のシートにアクセスする
const ss = SpreadsheetApp.getActiveSheet();
//緑色のセルの所を取得して定数sに格納する
s = ss.getRange(1, 2).getValue();
//定数sに格納出来たことをログ出力で確認する
console.log(s);
//スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
let s2 = [];
//pushメソッドでs2にsを2次元配列として追加する
s2.push([s]);
//スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
console.log(s2);
//スプレッドシートの黄色いセルに出力する
ss.getRange(3, 2).setValue(s2);
}
宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。
よみうりランド、ジュエルミネーション、グッジョ!
■ 参考文献の紹介■
じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。
初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。
GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。
paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験
プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。