>100 Views
July 18, 26
スライド概要
何卒よろしくお願い申し上げます。 一流のIT研修講師を目指し、日々研鑽を続けております。 本資料は外部公開用としてご提供するものです。
EXERCISE WORKBOOK — FOR STUDENTS YAML実践講座 演習問題集 穴埋め形式・全8問(各問題の次ページに解答を掲載) うさうさ研修工房 「YAML実践講座」対応演習教材 01 / 22
HOW TO USE この問題集の使い方 【 】の部分を埋める コード中の黄色い【 】の箇所に、正しい YAML記法を考えて書き込んでください まずは自力で解答する テキストや前のモジュール資料を見返しながら、まずは自分で考えてみましょう 次ページで答え合わせ 各問題の直後のページに解答と解説を掲載しています。焦らず 1問ずつ確認してください 02 / 22
MODULE 01 基礎文法編:問題 1〜2 キー・値、インデントの基本を確認します 03 / 22
MODULE 01 — 問題 1 キーと値の基本 コロンの後に必要な記号を【 】に書き込んでください。 YAML name: shirousagi role【コロンの書き方】 announcer confidence: 8 💡 ヒント: コロンの直後に必要な文字は何でしょうか? 04 / 22
MODULE 01 — 解答 1 キーと値の基本 — 解答 正解の YAML name: shirousagi role: announcer confidence: 8 解説 コロンの直後には半角スペースが1つ必要です(key: value の形)。スペースを省略すると、多くのパーサーで正しく解釈されません。 05 / 22
MODULE 01 — 問題 2 インデントで階層を表す appearance の子要素になるよう、【 】に正しいインデント幅を考えて埋めてください(半角スペース使用)。 YAML character: 【インデント】 appearance: 【インデント】 fur_color: white 💡 ヒント: appearance は character の子、fur_color は appearance のさらに子です。階層が1つ深まるごとにスペースを増やします。 06 / 22
MODULE 01 — 解答 2 インデントで階層を表す — 解答 正解の YAML character: appearance: fur_color: white 解説 character(0スペース)→ appearance(2スペース)→ fur_color(4スペース)というように、階層が1段深くなるごとにインデント幅を増やします。同じ階層は必ず同じ幅 で揃えます。 07 / 22
MODULE 02 構造編:問題 3〜4 リストとネスト構造を確認します 08 / 22
MODULE 02 — 問題 3 リストの書き方 poses の各要素(ポーズ一覧)を正しいリスト記法で埋めてください。 YAML poses: 【記号】 waving 【記号】 pointing forward 💡 ヒント: 単純な値をリストとして列挙するときに行頭へ置く記号は何でしょうか? 09 / 22
MODULE 02 — 解答 3 リストの書き方 — 解答 正解の YAML poses: - waving - pointing forward 解説 リストの各項目は「- 」(ハイフン+半角スペース)で始めます。「- : waving」のようにコロンを加えるのは誤りです(キーを持たない単純な値のため)。 10 / 22
MODULE 02 — 問題 4 オブジェクトのリスト reference_shots の1つ目の要素(angle: front を持つマップ)を正しく埋めてください。 YAML reference_shots: - angle: front 【インデント幅】 expression: smiling 💡 ヒント: expression は「- angle: front」で始まった同じリスト項目(マップ)の一部です。ハイフンの位置に揃えて考えましょう。 11 / 22
MODULE 02 — 解答 4 オブジェクトのリスト — 解答 正解の YAML reference_shots: - angle: front expression: smiling 解説 ハイフンの後に key: value を続けると、リストの各要素自体がマップになります。同じ要素内の2つ目以降のキー(expression)は、ハイフンの文字位置に合わせて4ス ペースのインデントにします。 12 / 22
MODULE 03 データ型・文字列編:問題 5〜6 クォート規則と複数行文字列を確認します 13 / 22
MODULE 03 — 問題 5 クォートが必要な値 aspect_ratio の値 16:9 を正しく記述してください(コロンを含む値であることに注意)。 YAML aspect_ratio: 【16:9 の正しい書き方】 💡 ヒント: 値の中にコロン(:)が含まれる場合、そのままでは正しく解釈されません。何で囲む必要があるでしょうか? 14 / 22
MODULE 03 — 解答 5 クォートが必要な値 — 解答 正解の YAML aspect_ratio: "16:9" 解説 コロンを含む値はダブルクォート(またはシングルクォート)で囲む必要があります。クォートなしの「16:9」はキーと値の区切りと誤認識される可能性があります。 15 / 22
MODULE 03 — 問題 6 複数行文字列の記号 改行をそのまま保持したい scene_note の値として、正しいブロックスカラー記号を埋めてください。 YAML scene_note: 【記号】 カメラは正面やや下から。 背景は柔らかいボケ。 💡 ヒント: 改行を「保持する」のは | と > のどちらでしょうか? 16 / 22
MODULE 03 — 解答 6 複数行文字列の記号 — 解答 正解の YAML scene_note: | カメラは正面やや下から。 背景は柔らかいボケ。 解説 | (パイプ、literal)は改行をそのまま保持します。> (フォールド、folded)は改行をスペースに変換して1行に畳み込むため、行区切りに意味がある文章には | を使い ます。 17 / 22
MODULE 04 実践・応用編:問題 7〜8 アンカー参照と総合問題です 18 / 22
MODULE 04 — 問題 7 アンカーと参照 base_character で定義したアンカーを、scene_1 と scene_2 で再利用できるよう埋めてください。 YAML base_character: 【アンカー定義】 fur: white scene_1: 【参照】 scene_2: 【参照】 💡 ヒント: 値に目印を付ける記号が &、その目印を呼び出す記号が * です。同じ名前を使いましょう(例:rabbit)。 19 / 22
MODULE 04 — 解答 7 アンカーと参照 — 解答 正解の YAML base_character: &rabbit fur: white scene_1: *rabbit scene_2: *rabbit 解説 &rabbit でアンカーを定義し、*rabbit で参照します。scene_1・scene_2 はどちらも base_character と同一の内容として複製され、重複記述と表記ゆれを防げます。 20 / 22
MODULE 04 — 問題 8 総合問題:キャラクタープロンプト これまで学んだ内容を組み合わせて、4箇所の【 】を埋めてください。 YAML character: outfit: 【インデント幅】 jacket: navy suit tags: 【開き括弧】 flat, cheerful【閉じ括弧】 negative_prompt: 【折り畳み記号】 blurry, extra limbs 💡 ヒント: 1つ目はインデント階層、2〜3つ目はリストのインライン記法(角括弧の開閉)、4つ目は改行を畳み込む記号です。 21 / 22
MODULE 04 — 解答 8 総合問題:キャラクタープロンプト — 解答 正解の YAML character: outfit: jacket: navy suit tags: [flat, cheerful] negative_prompt: > blurry, extra limbs 解説 jacket は outfit の子として4スペース。tags は角括弧 [ ] を使ったインライン形式のリスト。negative_prompt は改行を畳み込むため > を使用します。すべて本講座 Module 1〜4で扱った規則の組み合わせです。 22 / 22
演習問題集 修了 全8問、お疲れさまでした。誤答が多かった箇所は、対応する本編モジュールを見直しましょう。 うさうさ研修工房 23 / 22