投稿

ラベル(Python)が付いた投稿を表示しています

MacにPythonの学習環境をつくる

イメージ
Intel MacにPaythonの学習環境を構築する手順。 自分用の備忘録なので解説なし。手順だけです。 1.  Homebrewをインストール 2.  pyenvをインストール 3.  pythonをインストール 4.  venvで仮想環境構築 5.  Visual Studio Codeをインストール 6.  venvで構築した仮想環境をVSCodeで使う 7.  外部ライブラリをインストール 8.  VSCodeでJupyter Notebookを使う ※ほとんどの作業は「 ターミナル 」で行う。 1. Homebrewのインストール (1) 以下のコマンドを(ターミナルで)実行し、"Command line tools for Xcode"をインストール。 xcode-select --install (2) Homebrew のホームページに記載されているインストールコマンドをターミナル画面にペーストし実行。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ※インストールの最後にPATHを通すよう指示が出るので従う。 2. pyenvのインストール (1) Homebrewを更新。 brew update (2) pyenvをインストール。 brew install pyenv (3) 以下の3行のコマンドを実行し、 環境変数を設定 。 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init -)"' >> ~/.zshrc 3. Pythonのインストール (1) インストール可能な Python のバージョンを確認...

Pythonインストールの備忘録

memorandum Mac にプリインストールされているバージョン以外の Python を使うために行なった作業。 _/_/_/_/_/_/_/_/_/_/_/ "Command line tools for Xcode" のインストール ターミナルを起動し、以下のコマンドを実行(Enter) xcode-select --install Homebrew のインストール Homebrew ページに移動し、記載されているインストールコマンドをターミナル画面にペーストし実行。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 英語の指示に従って PATH を通す、 Homebrew を更新 brew update pyenv をインストール brew install pyenv pyenv 用に profile を調整 ネットを探すといくつか方法が見つかるが、 公式 ?に従う。 echo 'eval "$(pyenv init --path)"' >> ~/.zprofile echo 'eval "$(pyenv init -)"' >> ~/.zshrc echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init -)"' >> ~/.zshrc ※この意味がおぼろげにしか分からない(^^;) pyenv は使わず Homebrew で直接 Python をインストールすればよかったかも? ↑ChatGPTに聞いてみた。 1行目:「~/.zshrc」という設定ファイルに、「PYE...

VS Code で Jupyter が使える

「パイワーク!」さんのこの記事が一番わかりやすかった! VS CodeでJupyterを使う https://python-work.com/vscode-ext-jupyter/

venv で構築した仮想環境を VSCode で使う

イメージ
memorandum 以前構築した Python の仮想環境 を VSCode で使うためにやったことの備忘録。 あれこれ試して使えるようになったので、結局何が有効だったのかいまひとつ判らないが、多分これ。 メニュー > Code > 基本設定 > 設定で「設定」開く。 「設定の検索」ボックスに「python.venvpath」と入力。 「Python: Venv Path」という設定項目が表示されるので、仮想環境構築用に作ったディレクトリのパスを入力。 Python のプロジェクトを開くと表示される赤枠の部分をクリック。 一覧が表示されるので、仮想環境のものを選択。 参考にさせていただいたサイト 【Python3×VSCode】実行環境を分ける必要が出たら行う手順(仮想環境作成) -- Qiita

iMac 2019 で Stable Diffusion を動かす

(備忘録) iMac 2019 (3GB 6core Intel Core i5, 40GB DDR4) で「 stable_diffusion.openvino 」を動かしてみた。 (参考にさせていただいたサイト) AI画像を生成できる「Stable Diffusion」をIntel CPUのみで動かす方法 プロのインフラエンジニアが、Intel CPUで、Stable DiffusionとWaifu Diffusionを動かしてみた。 "Command line tools for Xcode" のインストール ターミナルを起動し、以下のコマンドを実行。 % xcode-select --install Homebrew のインストール Homebrew ページに移動し、記載されているインストールコマンドをターミナル画面にペーストし実行。 % /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Homebrew を更新 % brew update pyenv をインストール % brew install pyenv pyenv 用に profile を調整 ネットを探すといくつか方法が見つかるが、 公式 に従う。 % echo 'eval "$(pyenv init --path)"' >> ~/.zprofile % echo 'eval "$(pyenv init -)"' >> ~/.zshrc インストール可能な Python のバージョンを確認 % pyenv install --list Pythonをインストール 今回は 3.9.14 をインストール。 % pyenv install 3.9.14 使用可能な Python のバージョンを確認 % pyenv versions 使用する Python のバージョンを指定 % pyenv global 3.9.14 ※ここで一度ログアウトしないと「指定」が反映されなかった。 結果の確認 % python --version ve...

Python: 関数...デフォルト引数...引数のキーワード指定...可変長引数

 Python 独習ノート 引数にデフォルト値を指定 仮引数にデフォルト値を指定すると、実引数の入力を省略できる。 def 関数名(引数1, 引数2, 引数2  = デフォルト値, … ):     処理     return 戻り値 関数呼び出しで実引数が指定されない場合は、デフォルト値が指定されたものとみなされる。 デフォルト値を指定した以降の仮引数もデフォルト値の指定が必要になる。 def eat(fujihira, yoshida, aritomo, mori='カレー'):     print('藤平さんは{}を、吉田さんは{}を、有友さんは{}を、そして森さんは{}を食べました。'.format(fujihira, yoshida, aritomo, mori)) eat('ピザ', 'サンドイッチ', 'マック') 実行結果 藤平さんはピザを、吉田さんはサンドイッチを、有友さんはマックを、そして森さんはカレーを食べました。 ※実引数を3つしか指定していないので、4つめの仮引数にはデフォルト値の「カレー」が代入されている。 引数にキーワード指定した関数の呼び出し 関数名(仮引数名1=実引数1, 仮引数名2=実引数2, …) def eat(fujihira, yoshida, aritomo='うどん', mori='すし'):     print('藤平さんは{}を、吉田さんは{}を、有友さんは{}を、そして森さんは{}を食べました。'.format(fujihira, yoshida, aritomo, mori)) eat('ピザ', 'カレー', mori='マック') 実行結果 藤平さんはピザを、吉田さんはカレーを、有友さんはうどんを、そして森さんはマックを食べました。 ※3つ目の実引数が "aritomo" ではなく、キーワードを指定した仮引数 "mori" に引き渡されている。 可変長引数 def 関数名(仮引数名1, 仮引数名2, 仮引数名3, *仮引数名n ): 末尾 の仮引数に「 * 」をつけると、複数の実引数を1つのタプ...

Python: 関数

Python 独習メモ 「関数」は自分で作ることもできる。 既に存在する関数と同じ名前の関数を作ると、関数の定義が上書きされてしまう。 最もシンプルな関数 def 関数名():    # 「定義」部分     処理 関数名()     # 「呼び出し」部分 def hellow():     print('こんにちは。') hellow() 実行結果 こんにちは。 引数を持つ関数 def 関数名(引数1, 引数2, …)   # 定義部分/引数を「仮引数」と呼ぶ     処理 関数名(引数1, 引数2, …)     #呼び出し部分/引数を「実引数」と呼ぶ def hellow(name):     print(f'{name}さん、こんにちは。') hellow('有友') 実行結果 有友さん、こんにちは。 (注意)関数内で準備された変数は、その関数の中でしか使えない。 関数に複数の引数を渡すことができる。 def profile(name, age, hobby):     print(f'私の名前は{name}で年齢は{age}歳。趣味は{hobby}です。') profile('吉田', 17, 'ダンス') 実行結果 私の名前は吉田で年齢は17歳。趣味はダンスです。 引数と戻り値を持つ関数 def 関数名(引数1, 引数2, …)     処理     return 戻り値     # 戻り値はひとつだけなので注意! 戻り値を受け取る変数名 = 関数名(引数1, 引数2, …) def data(x, y):     answer = x * y     return answer answer = data(3, 7) print('掛け算の答えは{}です'.format(answer)) 実行結果 掛け算の答えは21です ※定義部分のanswerと呼び出し部分のanswerは別の変数なので、どちらかを変更しても実行結果は同じになる。 タプルを使った複数の戻り値 def value(a, ...

Python: for 文

Python 独習メモ for 文は、決まった回数の処理を繰り返すのに便利。 for 文でリストの全要素を参照する。 for 変数 in リスト:     繰り返し処理 scores = [50, 60, 70, 40, 90] for data in scores:  # リストの要素が順番にdataに格納される     if data >= 60:         print('ok')     else:         print('no') 実行結果 no ok ok no ok range 関数を使って決まった回数繰り返す。 for 変数 in range(n): n = 4 for num in range(n):     print('aaa') 実行結果 aaa aaa aaa aaa ※range() は0から指定した数より1小さい整数までの要素をもつ整数列をつくり出す関数。 繰り返しの強制終了(break) scores = [20, 30, 50, 40, 35, 25, 55, 60, 32, 27] num = 5 sample = list()  # 空のリストをつくる for data in scores:     if data >= 20 and data <= 35:         sample.append(data)         if len(sample) == num:  # もしサンプルの数がnに達したら↓             break   # ↑処理を強制的に終了する print(sample) 実行結果 [20, 30, 35, 25, 32] instance 関数 instance(データ, データ型) データがデータ型(int, str, bool など)と一致したらTrueに置き換わる。 繰り返しのスキップ(cont...

Python: while 文 (繰り返し)

Python 独習メモ while 条件式     条件好きが成立したときの処理 count = 0 counts = [] while count <= 5:     counts.append(count)     print(counts)     count = count + 1 実行結果 [0] [0, 1] [0, 1, 2] [0, 1, 2, 3] [0, 1, 2, 3, 4] [0, 1, 2, 3, 4, 5] 回数ではなく状態(True/False)で繰り返す。 is_hunger = True count = 0 while is_hunger == True:     count += 1     print('{}杯目のラーメンを召し上がれ^^'.format(count))     key = input('お腹いっぱい?(y/n)>>')     if key == 'y':         is_hunger = False print('まいどあり') 実行結果 1杯目のラーメンを召し上がれ^^ お腹いっぱい?(y/n)>>n 2杯目のラーメンを召し上がれ^^ お腹いっぱい?(y/n)>>y まいどあり ある事柄や状態を二者択一で表すには、bool 型を利用する。フラグとなる変数名は一般的に "is_xxx" とする。 繰り返しでリストを作成。 count = 0 cat_num = int(input('ネコは何匹ですか?>>')) weight_list = list()  # list 関数(コレクション変換)を使って空のリストを作る while count < cat_num:     count += 1     weight = float(input('{}匹目の体重を入力>>'.format(count)))     weight_list.append(weight)...

Python: if文 (条件分岐)

 Python 独習メモ if 文の基本形 if 条件式:     条件式が真(true)の場合に実行する処理          value = int(input('1~10の数を入力してください')) if value >= 5:     print('5以上です') 実行結果 1~10の数を入力してください7 5以上です 論理演算子を使ってふたつ以上の条件を組み合わせる score = 70 if score > 60 and score < 80:     print('そこそこ') 実行結果 そこそこ if else の形 if 条件式:     条件式が真(true)の場合に実行する処理 else:     条件式が偽(false)の場合に実行する処理 value = int(input('好きなら1、嫌いならそれ以外を入力して下さい')) if value == 1:     print('好きです') else:     print('嫌いです') 実行結果 好きなら1、嫌いならそれ以外を入力して下さい2 嫌いです if elif else の形 if 条件式A:     条件式Aが真(true)の場合に実行する処理 elif 条件式B:     条件式Aが偽(false)で条件式Bが真(true)の場合に実行する処理 else:     すべての条件式が偽(false)の場合に実行する処理 value = int(input('1~10の数を入力してください')) if value == 1:     print('1です') elif value == 2:     print('2です') elif value == 3:      # elif は複数でもよい     print('3です') else:     print('入力が間違っています') 実行結果 ...

Python: 比較演算子, 論理演算子

 Python 独習メモ 「もし○○なら」といった「条件式」を作るのに使われるのが「比較演算子」と「論理演算子」。 比較演算子 a == b     aとbは等しい a != b     aとbは等しくない a > b     aはbより大きい a < b     aはbより小さい a >= b     aはbより大きいか等しい a <= b     aはbより小さいか等しい 論理演算子 a and b a も b も真であれば真 a or b a または b が真であれば真 not a a が偽であれば真 もどる

Python: セットによる集合演算

Python 独習メモ セットによる集合演算 集合演算とは、ふたつのセットの共通点や違いを探す処理。 集合演算子 a | b     # 和集合     a と b の要素を合わせたもの a & b     # 積集合    a と b の両方に含まれる要素  a - b     # 差集合     a から a と b 両方に含まれる要素を除いたもの a ^ b     # 対集合    a になく b にあるものと b になく a にあるものの集合  a = {1, 2, 3, 4} b = {2, 3, 4, 5} print(a | b) print(a & b) print(a - b) print(a ^ b) 実行結果 {1, 2, 3, 4, 5} {2, 3, 4} {1}                              # 注意 5 がない! {1, 5} & 演算の使用例 member_data = {'吉田': {'a', 'b', 'c', 'd'}, '森': {'c', 'd', 'e', 'f'}} common_data = member_data['吉田'] & member_data['森'] print(common_data) 実行結果 {'d', 'c'} ※集合演算はコレクションのなかでもセット特有の機能なので、セットをリストやタプルに変えるとエラーになる。 完全に忘れていた!(T-T) もどる

Python: コレクションのネスト(入れ子)

Python 独習メモ コレクションはネスト(入れ子)にできる。 辞書の中に辞書をネストする yoshida_scores = {'国語': 80, '算数': 75, '理科': 70, '社会': 90} aritomo_scores = {'国語': 85, '算数': 90, '理科': 85, '社会': 85} members_scores = {'吉田': yoshida_scores, '有友': aritomo_scores} print(members_scores) 実行結果 {'吉田': {'国語': 80, '算数': 75, '理科': 70, '社会': 90}, '有友': {'国語': 85, '算数': 90, '理科': 85, '社会': 85}} 辞書の中にセットをネスト member_scores = {'吉田': {30, 40, 50}, '有友': {40, 55, 60}                  } print(member_scores)  # ふたりのスコアを表示 print(member_scores['有友'])  # 有友さんのスコアを表示 実行結果 {'吉田': {40, 50, 30}, '有友': {40, 60, 55}} {40, 60, 55} 2次元リスト a = [1, 2, 3] b = [4, 5, 6] c = [a, b] print(c) print(c[1])  # リストcの1番目(リストb)だけを表示 print(c[1][2])  # リストcの1番目(リストb)の2番目だけを表示 実行結果 [[1, 2, 3], [4, 5, 6]] [4, 5, 6] 6 ※2次元リストについては このページ が分かりやすい。 _/_/_/_/_/_/_/_/_/_/_/ Pyth...

Python: コレクションの相互変換

Python 独習メモ コレクション(リスト、辞書、タプル、セット)は 関数を使って 相互に変換できる。 list 関数 tuple 関数 set 関数 members = ['吉田', '有友', '森', '藤平'] scores = {'算数': 80, '理科': 75, '国語': 85} print(members)  # リストをそのまま表示 print(tuple(members))  # リストをタプルに変換して表示 print(set(scores))  # キーだけが変換される print(set(scores.values()))  # 値が変換される 実行結果 ['吉田', '有友', '森', '藤平'] ('吉田', '有友', '森', '藤平') {'算数', '理科', '国語'} {80, 75, 85} 辞書(ディクショナリ)への変換 キーを格納したリスト等と値を格納したセット等を準備して、「dict(zip(キーのリスト等, 値のリスト等))」という構文で辞書に変換できる。 members = ['吉田', '有友', '森', '藤平'] scores = [77, 88, 99, 100] member_scores = dict(zip(members, scores)) print(member_scores) 実行結果 {'吉田': 77, '有友': 88, '森': 99, '藤平': 100} もどる

Python: タプルとセット

Python 独習メモ タプルとセットは利用頻度が低いので、そんなものがある程度でも良いらしい... タプル = 中身が変更できないセット タプルの定義 変数 = (値1, 値2, 値3, …) リストと同様に各要素に 0 からはじまる添字がつく scores = (50, 65, 80 ,90) print(scores) print(scores[0]) print('要素数は{}'.format(len(scores))) print(f'合計は{sum(scores)}') 実行結果 (50, 65, 80, 90) 50 要素数は4 合計は285 タプルはリストと同様にsum 関数・len 関数が使え、スライスを使って要素の一部を取り出すこともできる。 scores = (50, 65, 80 ,90) print(scores) print(scores[1:2]) print(sum(scores)) print(len(scores)) 実行結果 (50, 65, 80, 90) (65,) 285 4 タプルの要素は変数でも良い。 (x, y) = (1, 2) num = (x, y) print(num) x = 3 print(num) 実行結果 (1, 2) タプルを作成したあとに変数に別の値を代入しても、タプルの要素は変更されない。 x = 1 y = 2 num = (x, y) print(num) x = 3 print(num) print(num[0] + num[1]) 実行結果 (1, 2) (1, 2) 3 _/_/_/_/_/_/_/_/_/ セット 重複した値を要素に持てない 添字やキーがないので特定の要素を参照・変更できない 添字がないので要素は順序を持たない append 関数の代わりに add 関数で要素を追加 セットの定義 変数 = {値1, 値2, 値3, …} members = ('鈴木') print(type(members)) members = ('黒島', )  # 要素数が1のタプルは値の後ろにカンマを付ける print(type(members)) 実行結果 <class 'str'> <cla...

Python: 辞書

Python 独習メモ 辞書(dictionary)とは? リストの「要素」に相当するものにキー(key)という見出し情報が付いたもの。 こんな感じ。 変数 = {キー1: 値1, キー2: 値2, キー3: 値3} scores = {'国語': 80, '理科': 90, '算数': 75} print(scores) 実行結果 {'国語': 80, '理科': 90, '算数': 75} キーには、文字列意外に整数型など様々な型のデータを指定できる キーのデータ型は要素ごとに異なってもよい キーの重複も許される(ただし、最後に指定したもの以外は無視される) 要素の値を参照 「キー」を指定すると「要素の値が表示される」 辞書[キー] scores = {'国語': 80, '理科': 90, '算数': 75} print(scores["理科"]) 実行結果 90 要素の追加と修正 辞書[新しいキー] = 新しい値 辞書[変更したい要素のキー] = 変更後の値 scores = {'国語': 80, '理科': 90, '算数': 75} scores['社会'] = 95  # 要素を追加 scores['理科'] = 65  # 要素を変更 print(scores) 実行結果 {'国語': 80, '理科': 65, '算数': 75, '社会': 95} 要素の削除 del 辞書[削除したい要素のキー] scores = {'国語': 80, '理科': 90, '算数': 75} del scores['理科']  # 理科を削除 print(scores) 実行結果 {'国語': 80, '算数': 75} 辞書の合計 scores = {'国語': 80, '理科': 90, '算数': 75} tot...

Python: リスト

Python 独習メモ 「関連するデータをグループにしてひとつの変数として扱う」仕組みをデータ構造といい、Python ではコレクション(collection)またはコンテナ(container)と呼ぶ。 「リスト」はコレクションのひとつ。 リストは複数の値を1列に並べて管理するコレクション。 リストに格納されるそれぞれの値を要素(element)といい、先頭から順にインデックス(index)または添字と呼ばれる、0から始まる管理番号が自動で振られる。 ↓ こんなイメージ '森(0)', '藤平(1)', '有友(2)', '吉田(3)' リストの定義 変数 = [要素1, 要素2, 要素3, …] ※要素は数値や文字列など members = ["吉田", "森", 100] print(members) 実行結果 ['吉田', '森', 100] 特定の要素だけを抽出したい場合は、変数名の後ろにインデックス(添字)を[]で囲んで記述する。 members = ["藤平", "吉田", 100] print(members[1]) 実行結果 吉田 sum 関数 リスト内の全要素の合計を求める scores = [70, 80, 90] total = sum(scores) print(f'合計{total}点です') 実行結果 合計240点です len 関数 リスト内の要素の数を求める scores = [70, 80, 90] print(len(scores)) 実行結果 3 要素の追加 リスト.append(追加する要素) members = ['藤平', '森', '有友'] members.append('吉田') print(members) 実行結果 ['藤平', '森', '有友', '吉田'] 要素の削除 リスト.remove(削除したい要素) members = ['鈴木', '山田', ...

Python: データ型, input 関数, type 関数, format 関数

Python 独習メモ データ型 int     整数     123, -100 float     小数     3,14, -0.7 str     文字列     "Hello", "ハンバーグ" bool     真偽値     True, False input 関数 変数名 = input(文字列) x = input("円周率は?") print(x) 実行結果 円周率は?3.14 3.14 type 関数 格納されている値のデータ型を調べる type(変数名) x = 10 print(type(x)) 実行結果 <class 'int'> データ型の変換 int 関数     int(x)     変数 x の値を int 型に変換 float 関数     float(x)     変数 x の値を float 型に変換 str 関数     str(x)     変数 x の値を str 型に変換 bool 関数     bool(x)      変数 x の値を bool 型に変換 x = 3.14 y = int(x) print(y) print(type(y)) z = str(x) print(z) print(type(z)) print(z * 2) 実行結果 3 <class 'int'> 3.14 <class 'str'> 3.143.14 format 関数 "{} を含む文字列".format(埋め込む値1, 埋め込む値2, …) name = input("名前?") age = input("年齢?") height = input("身長?") print("私の名前は{}で、年齢は{}歳で、身長は{}cmです".format(name, age, height)) 実行結果 名前?吉田 年齢?17 身長?162 私の名前は吉田で、年齢は17歳で、身長は1...

PyCharmのインストールと基本的な設定

イメージ
"Pythonプログラミング VTuber サプー" さんの動画を参考にして Python の「統合開発環境: IDE (Integrated Development Environment)」のひとつ、PyCharm のインストールと簡単な初期設定をやってみました。  ※せっかく  Homebrew をインストールしたので使いましたが、dmg ファイルを 公式からダウンロード してインストールしてもなんの問題もないです(^^:) (特に高齢者が) プログラム言語を覚えるには、「コードを書いて実行してみる」ことが一番大事だと思うので、簡単にそれができる IDE は必須だと今回思いました。 _/_/_/_/_/_/_/_/_/_/_/ Homebrew で PyCharm (無料版)をインストール % brew install --cask pycharm-ce ※"cask" は GUI を持つアプリをインストールする際のオプション。 ※ プロジェクトの作成 PyCharm を起動すると以下の画面が表示されるので "New Project" をクリック。 下の画面が表示されるので、"Base interpreter" に pyenv でインストールした Python を指定。 日本語入力パックのインストール "アプリケーションメニューで Preferences" を選択。 "Plugins" を選択。検索バーに "japanese" と入力すると "日本語入力パック" が表示されるので "Install" して "Restart" 。 文字サイズの調整 "Preferences" --> "エディター" --> "フォント" でフォントサイズを変更。変更したら "OK" をクリック。("OK" は他の項目でもクリックする) カラースキームの選択 "Preferences" --> "エディター" --> ...

Python: 変数, 算術演算子, 複合代入演算子, エスケープシーケンス, その他

Python 独習メモ 変数 変数とは、値が保管されている場所を指し示すもの。 変数名 = 値 x = 100 x = "abc" アンパック代入 一度に複数の変数に複数の値(の補完されている場所)を代入。 x, y = "abc", 100 算術演算子 +     足し算(加算) -     引き算(減算) *     掛け算(乗算) /     割り算(除算)※結果は少数 //    割り算の商 ※結果は整数 %     割り算の余り **     べき乗(累乗) 演算子には優先順位があり、高いものから順に処理される。同じ優先順位のものは左から処理される。 優先順位 高     ** 中     *, /, % 低     +, - 文字列における算術演算子 +     文字列の結合(文字列+文字列のとき) x = 'abc' + 'def' print(x) 実行結果 abcdef *     文字列の反復(文字列*数値または数値*文字列のとき) x = 'abc' * 2 print(x) 実行結果 abcabc 複合代入演算子 age += 1 price *= 1.5 +=      右辺の値と左辺の変数の値を足し算して変数に代入 -=     右辺の値と左辺の変数の値を引き算して変数に代入 *=     右辺の値と左辺御変数の値を掛け算して変数に代入 /=     右辺の値と左辺の変数の値を割り算して変数に代入 よく使われるエスケープシーケンス \n  改行を表す制御文字 \\ (バックスラッシュ) \' (シングルクオーテーション) \" (ダブルクオーテーション) ちなみに、Mac では"optinon + ¥"で \ が入力できる。  戻る