この記事を読むことで、恐らく1番簡単なPythonの標準入力で文字列を取得する方法、GASでは二次元配列として文字列を取得する方法、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 行で与えられるので s をそのまま出力してください。
この記事では、下記の入力例1の場合を例にして、文字列の出力を行います。
入力例1
paiza
出力例1
paiza
ではまず、Pythonで解いてみます。
今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。
■ Pythonでの解き方 ■
下準備として、paiza.ioにこの様に入力します。
(入力例1をそのままioにコピーしただけ。)
手順として、
1:標準入力で最初の単語wordを読み込む
2:print文でwordを出力する
で、行います。
この手順で作成したプログラムを実行した出力結果です。
コードはこちらになります。
#標準入力で文字列を読み込む
word=input()
#その文字列を出力する
print(word)
■ GASでの解き方 ■
では、同じ問題をGASで解いてみます。
まず、スプレッドシートにこの様に配置しました。
スプレッドシートの緑のセルに文字列「paiza」を入力しました。
これを黄色いセルにそのままま文字列を出力します。
※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※
手順はこのようになります。
1:スプレッドシートからアクティブシートにアクセスする
2:緑のセルから文字列を取得する
3:文字列が出力出来たことをログ出力で確認する
4:文字列をスプレッドシートに二次元配列として取得する配列word2を宣言する
5:word2が二次元配列になる様に、wordを追加する
6:スプレッドシートに二次元配列として取得する配列str2を宣言する
7:str2が二次元配列になるようにstrを追加する
8:スプレッドシート出力前にログで確認する
9:スプレッドシートの黄色いセルに出力する
手順1: スプレッドシートからアクティブシートにアクセスする
const ss=SpreadsheetApp.getActiveSheet();
ここで定数ssにSpreadsheetAppから階層を辿ってアクティブシートにアクセスしています。
手順2:緑のセルから文字列を取得する
const word=ss.getRange(1,1).getValue();
手順3:文字列が出力出来たことをログ出力で確認する
console.log(word);
手順4:文字列をスプレッドシートに二次元配列として取得する配列word2を宣言する
let word2=[];
手順5:word2が二次元配列になる様に、wordを追加する
word2.push([word]);
手順6:スプレッドシート出力前にログで確認する
console.log(word2);
手順7:str2が二次元配列になる様に、strを追加する
str2.push([str]);
手順8:スプレッドシートに出力する前に確認する
console.log(str2);
手順9:スプレッドシートの黄色いセルに出力する
ss.getRange(3,1).setValue(word2);
実行後のスプレッドシートです。
GASでの全コードはこちらになります。
function standardInput01() {
//SpreadSheetAppから階層を辿って現在のシートにアクセスする
const ss = SpreadsheetApp.getActiveSheet();
//緑のセルから文字列を取得する
const word = ss.getRange(1, 1).getValue();
//文字列が出力出来たことをログ出力で確認する
console.log(word);
//文字列をスプレッドシートに二次元配列として取得する配列word2を宣言する
let word2 = [];
//word2が二次元配列になる様に、wordを追加する
word2.push([word]);
//スプレッドシート出力前にログで確認する
console.log(word2);
//スプレッドシートの黄色いセルに出力する
ss.getRange(3, 1).setValue(word2);
}
宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。
東京世田谷区の秘境??等々力渓谷で癒されました。
■ 参考文献の紹介■
じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。
初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。
GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。
paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験
プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。