STEEMhttps://steem.jp科学、技術、工学、数学を英語で学ぶSun, 07 May 2023 02:58:35 +0000jahourly1https://steem.jp/wp-content/uploads/2022/05/cropped-icon-copy-32x32.pngSTEEMhttps://steem.jp3232 208094205【Radiohead】”Creep (Acoustic)”の歌詞から学ぶ英語表現 #AwesomeMixVol3https://steem.jp/english/radiohead-creep-lyrics-and-english-expressions/https://steem.jp/english/radiohead-creep-lyrics-and-english-expressions/#respondSun, 07 May 2023 02:58:31 +0000https://steem.jp/?p=3974Guardians of the Galaxy Vol.3の劇中挿入歌集、Awesome Mix Vol. 3 (和名: 最強ミックスVol. 3)の1つ、Radiohead のCreepの歌詞と難しい英語表現の意味・和訳を紹介します。

全ての文を和訳すると歌詞が持つ本来の意味や想いの妨げになるため、一部の英語表現しか取り上げないことをご了承ください。

歌詞 Lyrics

When you were here before以前
Couldn’t[1]I couldn’t の略 look you in the eye
You’re just like an angel
Your skin makes me cry
You floatひらひら舞う・漂う like a feather羽毛
in a beautiful world
I wish I was special
You’re so fuckin’ special

But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here

I don’t care if it hurts
I wanna have control
I want a perfect body
I want a perfect soul
I want you to notice気づく
When I’m not around [2] … Continue reading
You’re so very special
I wish I was special

But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here
Oh, oh

She’s running out again
She’s running out
She run, run, run, run
Run

Whatever makes you happy
Whatever you want
You’re so fuckin’ special
I wish I was special
But I’m a creep
I’m a weirdo
What the hell am I doing here?
I don’t belong here
I don’t belong here

英語表現

Look in the eye

look someone in the eye
to talk to someone in an honest way that shows no doubts:

Cambridge Dictionary

直訳すると「瞳をのぞいて」となりますが、大抵は「〇〇の目をじっと見て、正直に答える」という意味で使われます。
例: Look me in the eye, and tell me that you don’t lie to me “嘘はついてないと私の目を見て(正直に)言って”

似たような表現に以下のような表現があります。

  • look someone in the face
    • 意味は同じ
  • look someone straight (right) in the eye
    • 「”しっかり”目を見て、〇〇して」のように、強調したい時に使います

目にまつ毛が入ったかもしれないから見てほしい、と言うときは”I think I’ve got something in the eye. Can you look at right eye?”

I wish I was

I wish I wasは「私が〇〇だったら」という意味です。
このI wish someone [動詞の過去形]という形は「(現実ではそうではないけど)こうだったらいいのに」という意味でよく使われます。

  • I am rich ⇔ I wish I was rich
    • 私は金持ちだ⇔私が金持ちだったらよかったのに
  • I can buy the car ⇔ I wish I could buy the car
    • 私はあの車が買える⇔私があの車を買えたらよかったのに
  • I have studied enough ⇔ I wish I had studied enough
    • 私は十分な勉強を終えた⇔私が十分な勉強をしていればよかったのに

creep, weirdo

どちらも「変な人」を表す言葉なのですが、微妙に意味が違うようです。

creep

  • someone who tries to make someone more important like them by being very polite and helpful in a way that is not sincere
  • an unpleasant person, especially a man
Cambridge Dictionary

「お偉いさんに媚び諂う人」や、何を考えているのか分からなかったりじっとこっちを見てくるような「気持ち悪い男性」という意味です。この歌詞では後者の意味で使われているはずです。


weirdo
a person who behaves strangely:

Cambridge Dictionary

こちらは「変な振る舞いをする人」という意味です。強いて言うなら「あの人体育の授業中にノート撮ってるよ、変な人」「あの女の人顔はすごいタイプなんだけど趣味は虫取りなんだって、変な人」みたいな感じですかね。
あくまでも”変”ってのは主観なので、そこまで深く考える必要もないのかもしれません。

因みに複数形はweirdosです。

belong (here)

belong toは「〇〇の財産/持ち物である」「〇〇の一員である」という意味で使われます。

  • That shield doesn’t belong to you. You don’t deserve it. My father made that shield! 
    • その盾は君のものじゃない。君はその盾に値しない。私の父がその盾を作ったんだ!
  • I belonged to the local baseball club.
    • 僕は地元の野球クラブに所属してたことがあるんだよ

belongには上記のような意味があるので、I don’t belong hereでは状況に応じて以下のような意味になります。

  • 僕には場違いな場所だ
  • ここは僕なんかが来ていいところじゃなかったんだ
  • 僕なんかお呼びじゃ無いんだよ…

んー、卑屈!!

後に続く言葉が名詞ならbelong to 〇〇を、hereならbelong hereとなるのは、「そこへ行く」をgo to thereと言わずにgo thereと言うのと同じ理由です。

It hurts

It hurtsだけ見ると、「そこが痛む」とも取れますし「それが(僕を)傷つける」のような意味となります。
今回の歌詞では、”I don’t care if it hurts” 「僕が傷ついても構わない」という意味になります。

hurtは、日本人の私たちにとって主語がどれだかわかりにくい動詞になっているので、例文で「結構いろんな状況で使えるんだなー」ということだけでも感じ取ってみてください。

  • Tell me where it hurts
    • どこが痛むか教えて
  • My leg hurts
    • 脚が痛いよ
  • You’re hurting me!
    • 傷ついたんですけど!
  • Sorry, I didn’t mean to hurt your feeling…
    • ごめんよ、君の気持ちを傷つけたかった訳じゃないんだ。
      ただ思ったことを言っただけというかそれが事実というか、痛いところ突かれて感情的になるのはいいけど、そのことから目を背け続けるのは良く無いことだと思うんだ。言い方に関しては謝るけど、どうか僕が言ったことの内容は後で冷静になって吟味して欲しい。だって元はと言えば(ry…

I’m (not) around

I’m around は「そばにいる」という意味になります。
I’m around hereなら「ここら辺にいる/住んでいる」のような意味になりますし、I’m around youなら「君のそばにいる」という意味になります。
この歌詞では”When I’m not around”なので、「そばにいない時」というのが自然な訳となります。


因みに、be around が日常生活で使われるときは「いる」の他に「存在している」「営業している」のような意味を持ちます。

  • There was no one around
    • そこには誰もいなかった
  • Yoga is not the latest fads to us, it’s(it has) been around for … I don’t know … a long time
    • 私たちにとってヨガは最近の一時的な流行とかではないです。それはもう…わかんないですけどずっと前からあるんです
  • That restaurant has been around before I was born
    • あのレストランは僕が生まれる前からある/営業してるんだよ

running out

We’re running out of time! “時間がもう無いよ!”のように、「何かが尽きる」と言う時にもrunning outという表現は使われますが、ここは普通に「彼女が部屋から飛び出していく」という意味にもとれます。

Terminology

Terminology
1 I couldn’t の略
2 「僕がそばにいない時に気づいて欲しい」か「僕がそばにいない時に君はとても特別だ」のに種類の解釈がでいると思います。因みに筆者は前者だと思います。
]]>
https://steem.jp/english/radiohead-creep-lyrics-and-english-expressions/feed/03974
“雨後彩虹 — Rainbow” Lyrics, Pinyin & Translation【A-Lin】https://steem.jp/english/alin-rainbow-lyrics-pinyin-and-translation/https://steem.jp/english/alin-rainbow-lyrics-pinyin-and-translation/#respondMon, 01 May 2023 13:27:11 +0000https://steem.jp/?p=3953

閉bì上shàng眼yǎn深shēn呼hū吸xī感gǎn受shòu著zhe Close your eyes and take a deep breath to feel it 看kàn似sì簡jiǎn單dān的de疼té ... ]]>


shàngyǎnshēngǎnshòuzhe

Close your eyes and take a deep breath to feel it

kànjiǎndāndeténgtòng

Seemingly simple pain

zhōngdehòuxiàzhe

The afternoon rain in my memory

rěnzhùlèizhíliú

I couldn’t help but cry

hàohànzhòumiáoxiǎode

You and I are small in the vast universe

biéjuànliànāichóu(guòjiùbiézàihuítóu)

Don’t be sad (Don’t look back)

tàiyángzhōngjiūzhàoliànghēiànjiǎoluò

The sun will eventually light up the dark corners

zhehòudàocǎihóng

With the rainbow after the rain

zhǎohuíshīxīnzhōngzuìchūzuìjiǎndāndeyóu

Find the lost heart of the most simple freedom

xiànguòzhuǎnniàntou

Discovery is but a second thought

xiàoróngshùnjiānrónghuàyōuchóukuàideshēnghuó

The smile melts in a moment the sorrow my happy life

zhāngkāishǒuwàngtiānkōngxiǎngshòuzhe

Open your hands and enjoy the sky

hòutiānqíngdeyángguānghěnnuǎnhuo

The sunny day was warm after the rain

wēiwēifēngchuīxiàngxiàozheshuō

A little wind blowing to me said with a smile

yíngjiēquánxīnde

Embrace your new self

hàohànzhòumiáoxiǎode

You and I are small in the vast universe

biéjuànliànāichóu(guòjiùbiézàihuítóu)

Don’t be sad (Don’t look back)

tàiyángzhōngjiūzhàoliànghēiànjiǎoluò

The sun will eventually light up the dark corners

zhehòudàocǎihóng

With the rainbow after the rain

zhǎohuíshīxīnzhōngzuìchūzuìjiǎndāndeyóu

Find the lost heart of the most simple freedom

xiànguòzhuǎnniàntou

Discovery is but a second thought

xiàoróngshùnjiānrónghuàyōuchóukuàideshēnghuó

The smile melts in a moment the sorrow my happy life

shǎnshuòzhexīngguāngdewǎn

A starry night

xiàxīnyuànhuìyónggǎn

Make a wish that I’ll be brave

zhehòudàocǎihóng

With the rainbow after the rain

zhǎohuíshīxīnzhōngzuìchūzuìjiǎndāndeyóu

Find the lost heart of the most simple freedom

xiànguòzhuǎnniàntou

Discovery is but a second thought

xiàoróngshùnjiānrónghuàyōuchóukuàideshēnghuó

The smile melts in a moment the sorrow my happy life

jiùshìkuàideshēnghuó

Is my happy life

]]>
https://steem.jp/english/alin-rainbow-lyrics-pinyin-and-translation/feed/03953
アルバム”You’re Not Alone” (2018)の歌詞から学ぶ英単語【Andrew W.K.】https://steem.jp/english/build-vocabulary-with-youre-not-alone-andrewwk/https://steem.jp/english/build-vocabulary-with-youre-not-alone-andrewwk/#respondSun, 30 Apr 2023 11:59:59 +0000https://steem.jp/?p=3888

私が大好きな音楽家、Andrew W.K.の5thアルバム「You’re Not Alone」の全曲の歌詞を紹介します。英語初学者の方が躓きそうな英語表現はルビとして振っています。 残念ながらApple MusicやiT ... ]]>

私が大好きな音楽家、Andrew W.K.の5thアルバム「You’re Not Alone」の全曲の歌詞を紹介します。
英語初学者の方が躓きそうな英語表現はルビとして振っています。

残念ながらApple MusicやiTunes、Spotifyで聴くことはできないので、私はAmazonでCDを買いました。。

共通の英語の省略表現
  • ‘Cos ⇒ Because
  • ‘em ⇒ them
  • Can’t, Don’t ⇒ I can’t, I don’t / We can’t, We don’t
  • Gotta / Got to ⇒ Have got toの略
    • 意味はhave toと同じ
  • you’d ⇒ you would もしくは you had
    • you think you will を過去形にすると、you thought you would になるので、you thought you’dと省略されます
  • gunna ⇒ going to
    • gonnaと綴られることが多いですが、発音からgunna と綴る人もいます
    • CDの歌詞カードではgunnaになっていました

The Power Of Partying — パーティーの力

Party…
Party…
Party…

Music is Worth Living For — 音楽があるだけで生きるに値する

「音楽は生きがい」


And I’ll bet youきっと君は〇〇だろう never thought you’d live to see the day生きて〇〇な日を迎える
Where we could play with joy and laughter
And I’ll bet you never thought we’d make it all the wayずっとうまくいく
And we could stay forever afterいつまでも

But I guess we proved you wrong
And I guess we showed ‘em all
We paid our dues
Getting up off the floor[1]pay one’s dueには「欲しいもののために(嫌なことを)実行する」という意味もあるので、「目的のために挫折から立ち直った」という意味となります。

And I guess we proved you wrong
And I guess we showed ‘em all
So much to lose
Walking right out the door[2]もし外の世界に飛び出したら失うものがたくさんある

Music is worth living for!
Music makes life worth living
Music is worth living for
Music is worth living for!
Music makes life worth living
Music is worth living for

A higher power that I can’t deny
Music makes me feel so high
Like the glorious壮大な sound of God
Coming down like a lightning rod避雷針
Give me the will意思 to love
So below and as above下も上もなく [3]As above, so below: 上なる如く、下もまた然り
The only way that I’ll survive
Music makes me want to stay alive

And I’ll bet you never thought we had the strength inside
Yeah, we almost died and we kept on going
And I’ll bet you never thought the pain was justified
But we found our pride and we kept it growing

But I guess we proved you wrong
And I guess we showed ‘em all
We did our best
We played until our hands were sore痛くなる
And I guess we proved you wrong
And I guess we showed ‘em all
Never gunna rest
We’re always gunna go for more

Music is worth living for!
Music makes life worth living
Music is worth living for
Music is worth living for!
Music makes life worth living
Music is worth living for

A higher power that I can’t deny
Music makes me feel so high
Like the glorious sound of God
Coming down like a lightning rod
Give me the will to love
So below and as above
The only way that I’ll survive
Music makes me want to stay alive

Ever Again — もう2度と

ever againは、主にneverと一緒に使って「もう2度としない」を表すための強調表現です。


People say that we’re born with a purpose
And that we’re meant to〜する運命にある make our dreams come true
But if our dreams start to crumbleボロボロに崩れる they can bury埋める、葬る us
Got to dig yourself out掘り出す and push on through断行する

They say that nobody changes
But I’m living proof that they do
Because I found the answer
And you can find the answer too
They made me think I was crazy
And that the pain was here to stay
But now that I found the answer
I’m never ever gunna lose my way
Ever again
Ever again

I’ll admit there were times I was terrified
I honestly thought I wouldn’t survive
But I learned a lot from my trip to the dark side
And from here on out今後もずっと I’ll keep my light alive

They say that nobody changes
But I’m living proof that they do
Because I found the answer
And you can find the answer too
They made me私に〇〇させる think I was crazy
And that the pain was here to stay
But now that I found the answer
I’m never ever gunna lose my way(人生の)道に迷う
Ever again
Ever again
Ever again
Ever again

Ever again
Ever again
Ever again
Ever again

I Don’t Know Anything — なにも知らない

I don’t know the truth
I don’t know the way
I don’t know what to think
I don’t know what to say

Yeah, but that’s alright
That’s OK
I don’t know anything

I don’t know the law
Or how to disobey逆らう、背く
How to keep it cool
Or how to hip-hooray英国式の万歳 [4]正確にはHip Hip Hooray

Yeah, but that’s alright
That’s OK
I don’t know anything

I don’t know, I don’t know
I don’t know, I don’t know

I don’t know the plan
Just disarray無秩序
I just lost the plotどうしていいかわからなくなった
I got lead astray迷わせる、騙される、堕落させる

Yeah, but that’s alright
That’s OK
I don’t know anything

I don’t know the Christ
Don’t know how to pray
How to face向き合う the world
Can’t even face the day

Hey, but that’s alright
Yeah, that’s OK
I don’t know anything

I don’t know, I don’t know
I don’t know, I don’t know

I don’t know the truth
I don’t know the way
I don’t know what to think
I don’t know what to say

But that’s alright
Yeah, that’s OK
I don’t know anything

I don’t know, I don’t know
I don’t know, I don’t know
I don’t know


The Feeling Of Being Alive — 生きてる実感

If you ever feel like something is very, very wrong
Wrong with life, wrong with yourself
I understand, I have that feeling too
But in actuality that feeling isn’t wrong
That feeling is just being human
That intense激しい、強烈な feeling inside is the feeling of existing
Of being alive, of being a person
It’s a mountain to climb, it’s a test to pass
It’s a challenge we are ultimately最終的には、根源的に worthy of
And rather than dreadとても心配する、恐る or resent憤慨する this challenge
We can embrace受け入れる、抱きしめる it, we can learn from it
And we can celebrate it
Life is very intense
But that doesn’t mean it’s bad
Understanding this is what partying is all aboutそういうもの、全て


That is what partying is all about
⇒ それこそがパーティーの全て ⇒ パーティーの全てはThat

Understanding this is what party is all about
⇒ それを理解することこそが、パーティーの全て

Party Mindset — パーティーの心構え

Party mindset all year around1年中
And where the party’s at you know I’ll be found
Don’t need a bar-b-qバーベキュー and don’t need a beach
I’m keeping clarity just out of reach今は”簡潔さ”をちょっと人の手の届かないところに隠してる

Party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion忘却の中 is time well spent有意義な時

I realized long ago
That all of life is one last waltz円舞曲
I’d had enough of feeling low
I realized everything I knew was false

So I killed the place inside自分の心
That told me feeling good was a crime
So glad that place has finally died
Now here’s to〇〇に乾杯だ feeling good all of the time

Here’s to a party mindset all year round
And where the party’s at you know I’ll be found
Don’t need a bar-b-q and don’t need a beach
I’m keeping clarity just out of reach

I’ll keep a party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion is time well spent

(Don’t need no friends)
Don’t need no friends to get me by
I couldn’t figure out that scene状況を理解する
No means or ends to justify
Just a one-man party machine

The best way to win this game
Is simply not to play along協力する
And disobey without no shame
Remember everything you know is wrong

You know I got a party mindset all year round
And where the party’s at you know I’ll be found
Don’t need a bar-b-q and don’t need a beach
I’m keeping clarity just out of reach

I’ll keep party mindset all year long
And at your party I’ll be singing this song
Don’t need a holiday or special event
Time in oblivion is time well spent

Oh

So-oh-oh-oh, so magical
So-oh-oh-oh, so magical

The Party Never Dies — パーティは終わらない

The child was born
Into a world of love
Into a world of pain
Into the night
Into the sun and rain

The child was torn
Between the black and white [5]be torn between A and B: どちらを選ぶか悩まされる、板挟みになる
Between the wrong and right
Between despair失望
And pure delight歓喜

The child of mysteries
The child of lies
The party never dies

The child is found
Beyond the rise and fall
Beyond the in and out
Beyond our faith
And all our doubt

The child is crowned王位を授かる
In a halo後光 of gold
A vision to behold目を見張るほど
Life unrestrained抑えようのない、自由な
And uncontrolled

The child of mysteries
The child of lies
The party never dies

Give Up On You — 君のことは諦める

We won’t give up on you
Won’t let you down失望させる
If you need a friend

If you’re feeling sad
If you’re feeling low
(If you’re feeling low)
You can count on頼る us
We will give you hope
We will make you strong
We will show you love
Only love

We won’t give up on you
If thoughts grow dark
And you feel alone

If you’re feeling bad
If you’re feeling hurt(感情が)傷ついた
(If you’re feeling hurt)
If you’re on the floor倒れてる
We will raise you up
We will heal your heart
We will show you love
Only love

Keep On Going — まだまだ行こうぜ

Far away from everyone
Let ‘em blow away in the dust置いてけぼりにする [6]leave 〇〇 in the dust: 〇〇を遥かに凌ぐ
And trust that everything
Is somehow gunna be alright

Can you remember your dreams?
Can you remember your darkest day?
All your deafening耳をつんざくような screams
But you kept on going anyway

Can you remember your fears?
Can you remember how it felt to cry?
All of your nightmare tears
Never figured out the reason why

But when they tried to push you ‘round振り回される、乱暴される
You just stood your ground一歩も引かなかった
And you kept on going

And when they tried to break your heart
You didn’t fall apartバラバラに壊れる、崩れる
You just kept on going

‘Cause that’s the reason
That’s the meaning
The meaning of a star

When you get back up and
Just keep on going
‘Til you’re

Far away from everyone
Let ‘em blow away in the dust
And trust that everything
Is somehow gunna be alright

Can you remember their eyes?
The way you felt when they looked at you?
Can you remember their lies?
The way you felt when you tried it too?

Can you remember the sorrow?
The way you felt like the world would end?
Can you remember tomorrow?
Can you learn to be your own best friend?

But when they tried to push you ‘round
You just stood your ground
And you kept on going

And when they tried to break your heart
You didn’t fall apart
You just kept on going

‘Cause that’s the reason
That’s the meaning
The meaning of a star

When you get back up and
Just keep on going
Until you’re

Far away from everyone
Far away from everyone
Just keep on going away from everyone
Far away from everyone
Just keep on going away from everyone
Far away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going away from everyone
Just keep on going

In Your Darkest Moments — 暗黒時代でも

In your darkest moments never forget that you can and will make it through乗り越える
Never forget the hard times that you already have made it through
And understand that in the future there will be more challenges but also more rewards報い
And all of this counts重要である、価値がある as life
It’s all part of true joy
Everything counts [7](人生の)全てに価値がある

After all, these ups and downs aren’t here to hurt us
They’re here to thrill us
To make the rollercoaster ride of life even more interesting and spectacular

Deep down inside we don’t really want an easy life
We want an amazing life
And the strength to love it with all our heart

Besides, darkness and shadow, those are not our enemies
They’re as necessary and natural as the nighttime is to the day
The dark isn’t bad, it’s simply the light casting a shadow

Our ultimate quest is not to destroy the shadows or our demons
But to learn to hold hands with that side of life
To party with our demons

The Devil’s On Your Side — 悪魔は君の味方

You thought it’d be an easy trip
But I took you for a rideお前を騙した
Woah, the devil’s on your side [8]悪魔が嘘をついて、簡単な旅だと思わせてくれるから私たちは何かに挑戦できるのかもしれませんね

You first refused to take me in私を頭に取り込む→理解する
But I made you open wide
Woah, the devil’s on your side

I’m in the back of your mind
I’m in the front of your head
I’m in the meaning behind(言葉の裏の)意味
I’m in the gold and the lead金と鉛

I’m there when you’re whirling the wheel空回りしている
I’m there when you’re facing the fire
I’m there when you’re doing the deal
I’m there in the lower and higher

The slimeヘドロ、不快なもの of life had stainedシミのついた、汚れた your heart
But I kept you purified浄化された
Woah, the devil’s on your side

The kings of earthこの世の王たち tried to lend a hand
I made sure their hands were tied
Woah, the devil’s on your side

I’m at the top of the stairs
I’m at the foot of the cross十字架のふもとに
I’m at the death of your cares心配、悲しみ
I’m at the moment of loss

I’m there when you’re breaking the bone
I’m there when you’re daring to恐れずに〇〇する dream
I’m there when you go it alone
I’m there when you’re one of the team

When all your thoughts become as one
I’ll reveal明らかにする a new divide不一致、分断
Woah, the devil’s on your side

You can try your best to block me out
But I just won’t be denied
Woah, the devil’s on your side
Woah…

No matter where you try to go
You can never hide
The devil is inside

Break The Curse — 呪いを打ち破れ

Look who put a curse on you again
Look who put a curse on you
A curse so bad it cursed me too[9]自らを呪うほどの悪い呪い

Look who put a curse on you
Look who put a curse on you
Again
Woah-oh-oh

Look who played a trick on you again
Look who played a trick on you
A trick so good it tricked me too

Look who played a trick on you
Look who played a trick on you
Again
Woah-oh-oh

Look who pulled a scam on you again
Look who pulled a scam on you
A scam so sweet it scammed me too

Look who pulled a scam on you
Look who pulled a scam on you
Again
Woah-oh-oh

No
No
Break the curse
Break the curse

Total Freedom — 完全な自由

We didn’t care at all about
Who had more or who
Came from less or was
Rich or poor

We didn’t care at all about
Who got first or who
Got here last or was
Best or worst

Total freedom
We had total freedom

And we, we didn’t care at all about
Time going fast or if
We could get ahead先に出る、追い抜く or if
We would miss the past

We didn’t care at all
No we, we didn’t care at all

We had total freedom
Total freedom
(We didn’t care at all)
(We didn’t care at all)
(At all…)

We didn’t care at all about
What other people thought or if
We could pass the test or if
We were cool or not

Total freedom
We had total freedom

And we, we didn’t care at all about
Following the crowd多数派に従う or if
They said we looked like fools or if
They said we laughed too loud

We didn’t care at all
No we, we didn’t care at all

Total freedom
Total freedom
(We didn’t care at all)
(We didn’t care at all)
(At all…)

Total freedom…
Total freedom…

Beyond Oblivion — 忘却の果てに

(Instrumental)

Confusion And Clarity — 混乱と明快

In the midst of〇〇の真っ只中で all the doubt
All the uncertainty, all the frustration, all the confusion
We must never lose sight見失う of the parts of life that we’re absolutely clear about
The parts of life that bring us undeniable and reliable確かな joy
These are sacred神聖

They give us strength
They give us pure physical and emotional energy
And that purely good feeling that tells us that life really is worth living
Even when it’s hard

The truest part of ourself is found inside the clarity of this feeling
This feeling is the life-force
It lives inside the undeniable love that we have for the people
And aspects of life that bring out the best we have to offer

Let this love define us
Let our spirit be fortified鼓舞される by this loving clarity
This love is our destiny
And our ultimate quest is to protect it, to amplify it
And to rejoice歓喜する in sharing its power with all the world

You’re Not Alone — 俺がついてるぜ

Your journey’s
Not over
It’sIt has just begun
Make your dreams
Your destiny
And do what must be done

If you’re frightened怯えている
If you’re worried
You’re not alone
Hand in hand手を取り合って
We’ll take the step一歩踏みだす
Into the great unknown

Your journey’s
Not over
It’s just begun
Make your dreams
Your destiny
And do what must be done

If you’re frightened
If you’re worried
You’re not alone
Hand in hand
We’re taking the step
Into the great unknown


何かわからない表現があれば、下のコメント欄か私のTwitterアカウントへのメンション/DMでお知らせください。

Terminology

Terminology
1 pay one’s dueには「欲しいもののために(嫌なことを)実行する」という意味もあるので、「目的のために挫折から立ち直った」という意味となります。
2 もし外の世界に飛び出したら失うものがたくさんある
3 As above, so below: 上なる如く、下もまた然り
4 正確にはHip Hip Hooray
5 be torn between A and B: どちらを選ぶか悩まされる、板挟みになる
6 leave 〇〇 in the dust: 〇〇を遥かに凌ぐ
7 (人生の)全てに価値がある
8 悪魔が嘘をついて、簡単な旅だと思わせてくれるから私たちは何かに挑戦できるのかもしれませんね
9 自らを呪うほどの悪い呪い
]]>
https://steem.jp/english/build-vocabulary-with-youre-not-alone-andrewwk/feed/03888
波動関数の意味とその性質【状態・重ね合わせの原理】https://steem.jp/science/physics/what-is-wave-function/https://steem.jp/science/physics/what-is-wave-function/#respondThu, 24 Nov 2022 14:31:39 +0000https://steem.jp/?p=2392

量子力学のシュレディンガー方程式を解くと波動関数 wave functionという関数が求められます。波動関数は電子や光がどれくらい広がって存在しているかを表しています。また、重ね合わせの原理 principle of ... ]]>

量子力学のシュレディンガー方程式を解くと波動関数 wave functionという関数が求められます。
波動関数は電子や光がどれくらい広がって存在しているかを表しています。また、重ね合わせの原理 principle of superpositionという基本原理に従って、「ある」と「ない」が共存した不確定な状態を作り出すことができます。

そんな波動関数は、量子力学の最も基礎的な方程式であるシュレディンガー方程式と深い関係があるので、今回はシュレディンガー方程式の簡単な説明から始めます。
「簡単」に説明するためにも、この記事ではシュレディンガー方程式を詳しく解かずに、高校物理までの知識でわかるように解説していきます。

波動関数と状態の説明

シュレディンガー方程式の説明

最も単純なシュレディンガー方程式は次のように書き表されます。

\left( \frac{\boldsymbol p^{2}} {2m}+V(\boldsymbol r) \right)\phi(\boldsymbol r)
=E\phi(\boldsymbol r)

それぞれの文字の意味は以下のリストにまとめています。

  • \boldsymbol{p}:量子の運動量
  • m:量子の質量
  • V(\boldsymbol{r}):ポテンシャルエネルギー
  • E:量子のエネルギー
  • \phi(\boldsymbol r):波動関数


この式は、量子現象を説明するために天下り的[1]数学や物理学で、なぜか分からないが天から降って湧いたように導入するとうまくいく式や解法のことに登場した方程式で、古典力学のニュートンの運動方程式[2]F=maに相当する基本方程式です。

それでは、シュレディンガー方程式の簡単な説明をします。

運動エネルギー


はじめに、左辺第1項 \boldsymbol{p}^2/2mは、量子力学の世界での粒子の運動エネルギー kinetic energyを表し、例えば電子などが該当します。運動量\boldsymbol{p}は、ベクトルであることを表すために太字で書きました。

運動エネルギーは高校で習った運動量の関係式 \boldsymbol{p}=m\boldsymbol{v}を使って、次のような見慣れた形に変形できます。

\frac{\boldsymbol p^{2}} {2m}=\frac{1}{2}m \boldsymbol{v}^2

ただし量子力学の世界では、電子は波であり粒子であるため上の式が成り立つような「速度」を定義できず、方程式を解く際には使えないので注意が必要です。
具体的にどうするのかについては、別の記事で解説しましょう。(制作中)

位置エネルギー

左辺2項目のV(\boldsymbol {r})位置エネルギー potnetial energyといいます。位置エネルギーは、量子力学ではポテンシャルエネルギーと呼ぶ場合が多いのですが、こちらの記事では位置エネルギーで統一することにします。位置エネルギーの項には、電場[3]電界や磁場[4]磁界によるエネルギーが代入されます。

具体的に位置エネルギーの例を挙げると、原子核に束縛される電子の運動を計算するには、電子と原子核のクーロン力に起因するエネルギーを代入します。逆に、外から何のエネルギーも加えられていない電子の運動を計算する場合は、位置エネルギーに0を代入します。
位置エネルギーがどんな式で表されるかによって、シュレディンガー方程式の形も大きく変化します。

これ以上解説すると本筋から脱線するので、この記事では具体的な形には立ち入りらず先に進みます。

エネルギー固有値


右辺のEエネルギー固有値 energy eigenvalueと呼ばれ、エネルギーを単位に持ちます。シュレディンガー方程式の左辺が運動エネルギーと位置エネルギーの和[5]力学的エネルギーで表されるので、右辺もエネルギーを単位に持つ量になります。量子力学の世界ではエネルギーがあまりに小さいので、単位はジュール[\text{J})]ではなくエレクトロンボルト[\text{eV}]という単位を使います。

波動関数

最後に、ギリシャ文字の\phiファイ(\boldsymbol{r})が波動関数を表します。量子力学以前の物理学である古典物理学に従うなら、全エネルギーは両辺の波動関数を消去した

\frac{\boldsymbol p^{2}} {2m}+V(\boldsymbol r)
=E

のような力学的エネルギーで書き表されていました。しかし、量子力学ではわざわざ波動関数を両辺に掛けた方程式を解かなくてはなりません。その理由を次の章で解説します。

ベクトルの表記法

この記事では運動量を始め、ベクトルを太字(e.g. \boldsymbol{p})で表記しています。
ベクトルには空間の幾何学的な方向を示す「幾何ベクトル」の他に、何らかの複数の数を縦に並べた「数ベクトル」も存在します。高校までは幾何ベクトルまでしか扱わないので、文字の上に矢印を書いて\vec{p}のように表しますが、ベクトル全体は一般的に太字で表します。
個人的には、大学に入ると時間微分を\dot{v}と表す場合があり、\vec{v}を採用すると\dot{\vec{v}}となって見にくくなることも理由の一つだと思っています。

量子の世界では観測の度に結果が変わる

波動関数を考慮する理由の一つは、測定するたびに得られる位置や運動量などの結果が変わるからです。

普段の生活や大学での実験など、私たちが長さ、質量、エネルギーなどの物理量 physical quantityと言われる量を観測するときは、外部から変化を促す力やエネルギーが加わっていない、または無視できるほど小さい場合、測定量は常に一定になります。

測定の度に物理量が変わってしまうことを、私たちの身近な物理量の一つである体重を例に説明しましょう。皆さんは体重を計測する際に、体重計に乗って数値を読み取ると思います。その時、体重計の指す値は一定のはずです。日頃ハードなトレーニングに励むアスリートでさえ、一日の体重変化は数kg程度に収まります。ましてや、体重計に乗ったまま数値を見るたびに体重が変動することはなく、したがって、観測するという行為そのものが物理量である体重を変化させることはありません。

しかし、量子力学の原理にのっとると、そのような現象が現実に起きてしまうことになります。
体重の変化は決して誤差の範囲ではなく、さっきは50kgだったのに今度測ったら10kgだった、というほど大幅に値が変わります。

もう少し物理学に沿った説明をするなら、熱力学が良い例の一つです。高校で勉強する理想気体の状態方程式 equation of stateは以下のような式です。

PV=nRT
  • P:圧力
  • V:気体の占める体積
  • n:物質量
  • R:気体定数
  • T:温度


この式の圧力Pや体積Vといった物理量は、観測・測定自体の影響で変化することはありません。しかし原子一つが見えるほど小さな、量子の世界でも状態方程式があるとすると、観測の度に測定値は変化していくことになります。

波動関数とは状態そのものを表す

観測するたびに物理量が変化してしまう問題を解決するためには、質量、長さ、エネルギーなどの物理量全体を内包する「状態」そのものを表現した関数を方程式に組み込むことで解決できます。そのために導入された関数のことを波動関数と呼びます。
つまり、波動関数とは「物理量の背後にある状態そのもの」といえるような関数です。

いきなり「波動関数=状態」と言われてもよく分からないかも知れないので、記事を読んでいる画面の前のあなたにちょっとしたクイズを出しながら、量子力学の状態(=波動関数)の正体をつかんでいただこうと思います。

突然ですが、今から下の箇条書きの情報を元に、それらの情報と合致する「元素」が何なのか、少しの時間推測してみてください。

  • 質量数:186.2
  • 原子半径:1.37[\text{\AA}]
  • 特筆点:地球上で最も希少
  • 生成方法:超新星爆発

正解は原子番号75番、「レニウム Rhenium(Re)」です。
レニウムはレアメタルの一種で、世界で最も希少な元素の一つです。

ロケットのノズルやジェットエンジンのタービンなどの高温、高負荷で使用する部品に使われます。


実は、みなさんが行った元素を特定するまでのプロセスは、量子力学の状態、物理量、観測と対応関係にあります。

  • 元素の情報→物理量
  • 情報から元素を調べる行為→観測
  • 元素の名称や元素自体→状態(波動関数)

はじめに、「元素の情報」は元素の断片的な性質を表しており、量子力学の「状態」の一側面である「物理量」に相当します。次に様々な断片的な元素の情報から、元素の正体を調べる行為が量子力学の「観測」です。観測によって様々な物理量を調べ、状態を求めるために必要な要素を集めます。最後に、推測した元素の名称や元素そのものが、量子力学の「状態」に相当します。

別の例で言い換えると、量子力学では数式を使ってバラバラに散らばっている「物理量」というピースを「観測」によって一つずつ調べ、「状態」というパズルを解いていきます。そして、求めるパズルに相当するのが「状態」でありシュレディンガー方程式の「波動関数」ということです。

クイズと量子力学の明らかな違いとして注意すべき点が、クイズには明確に正解が存在し、私たちは正解である元素の名前を知ることができます。しかし、量子力学では観測によって得られる結果は物理量であって状態ではなく、状態そのものを観測することはできません。
したがって、波動関数の実体を直接観測することができず、あくまで物理量を元に波動関数や量子力学的な性質を推測することになります。このことは、量子力学が波動関数を当てるクイズだとすると、クイズの正解がはっきりと存在しない、あるいは複数存在することに相当します。

また、物理量すら観測によって容易に変化してしまうのが量子力学の世界です。古典物理学では、物理量は観測によって変化せず常に一定です。一方、量子力学の理論によると、例えばあなたが私の趣味を聞いたとき、最初は「サーフィンが好き」といっていたにもかかわらず、5秒後に同じ質問をすると「スノーボードが好き」と返されるというようなことが、現実に起こり得ます。
こうした量子力学の不可思議な性質は、プラトンの洞窟の比喩 Allegory of the caveや思考実験の中国語の部屋哲学的ゾンビ Philosophical zombieと共通点があるように思います(クリックするとWikipediaに飛びます)。

量子力学では状態を筆頭に、ある種のブラックボックスになっている概念が多く、それらに多様な解釈が生まれています。本記事でも波動関数に対する代表的な解釈として、ボルンの確率解釈 Born’s stochastic interpretationという、量子力学で広く支持されている解釈を次節で紹介しています。

ボルンの確率解釈とは

前節で説明したように、私たちは量子の状態そのものを観測することができません。
では、実体の捉えられない状態=波動関数も、物理学者が作り出した単なる机上の空論に過ぎないのでしょうか。
現代の量子力学は、そうした疑問に一つの解釈を提示しています。その解釈の一つが、前節で触れたボルンの確率解釈 Born’s stochastic interpretationです。

ボルンの確率解釈によると、波動関数の絶対値を取って二乗した値が、その地点に粒子が存在する確率密度を表しています。確率密度とは、非常に狭い領域の確率のことです。
波動関数は一般に実数と虚数からなる複素数です。なぜ複素数かというと、波動関数には私たちが観測できる実数の他に、私たちが観測できない虚数の成分も含まれていると考えられたからです。しかし、複素数である波動関数に対して絶対値をとって二乗すると、虚数の成分が消えて私たちにも観測できるようになります。その値が粒子の存在確率だとする解釈が、ボルンの確率解釈です。

ある地点での粒子の存在確率を \rhoロー(x,y,z)、私たちが住む三次元空間x,y,zでの波動関数を\phi(x,y,z)として、ボルンの確率解釈を式に表すと下のように書けます。

\begin{aligned}
\rho(x,y,z)
& =\phi^*(x,y,z)\phi(x,y,z) \\[4mm]
&=|\phi(x,y,z)|^{2}
\end{aligned}

上の式では、波動関数\phi(x,y,z)とその複素共役\phi^*(x,y,z)を掛け合わせた式を計算しており、それがある地点の粒子の存在確率と等しいことを表しています。

波動関数とは何かを説明したところで、次章では波動関数の持つ特異な性質を紹介しましょう。

波動関数の性質

規格化:波動関数の値域を揃える

ボルンの確率解釈を説明した際に、波動関数の絶対値の二乗はその地点の確率密度\rho、つまり1つの粒子が狭い領域で存在する確率を表すと説明しました。
\rhoはあくまで確率密度なので、粒子がより大きな3次元空間に存在する確率P(x,y,z)を求めるには、x軸、y軸、z軸方向に積分する必要があります。すなわち、\rhoに対して下に書いたような積分を行います。

\begin{aligned}
P(x,y,z)
& =\int_{z_1}^{z_2}\int_{y_1}^{y_2}\int_{x_1}^{x_2}\rho(x,y,z)dxdydz\\
& =\int_{z_1}^{z_2}\int_{y_1}^{y_2}\int_{x_1}^{x_2}\phi^*(x,y,z)\phi(x,y,z)dxdydz
\end{aligned}

P(x,y,z)は確率を表すので値域は0~1で、全区間で積分すると1になるはずですが、波動関数自体の値域には制限がなく、0~1であることの方が少ないです。波動関数は私たちに観測できない量として導入された関数なので、それを反映するかのように値域の制約はありません。

そこで、\rho(x,y,z)を3次元空間全体で積分した値Nで割り、確率Pの値域を0~1にそろえてあげます。そのことを規格化 normalizationまたは正規化と言います(どちらも同じ意味です)。

N規格化定数 normalization constantといい、Nを求めるためには下に書いた計算をします。積分時にdxdydzと毎回書くのは冗長なので、まとめてd\boldsymbol{r}と書くことにします。

\begin{aligned}
&N\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}\rho(x,y,z)dxdydz=1 \\[4mm]
& N\int_{-\infty}^{\infty}\rho(\boldsymbol{r})d \boldsymbol{r}=1\\[4mm]
&N\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}=1 \\[4mm]
\therefore \quad
&N=\frac{1}{\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}}
\end{aligned}

積分範囲の\inftyは全区間という意味です。
(広義積分を覚えている方は、上の式のように極限を使わない書き方に違和感を覚えるかもしれません。しかし、物理学の世界では毎回\text{limit}を書くのは面倒なので基本的にこのように書きます)

細かい計算をしたいときには、各軸ごとに積分範囲を決めて積分を実行します。

積分すると自動的に規格化されるように、あらかじめ波動関数を下のように書くこともあります。

\frac{1}{\sqrt{N}}\phi(\boldsymbol{r})

上の波動関数を規格化した波動関数といいます
\phi(\boldsymbol{r})が規格化されているかどうかで、細かな計算結果に影響することがあるため、規格化定数の有無には注意する必要があります。とはいえ、「\phiは規格化されている」などとことわって\sqrt{N}は書かないことも多くあります。

演算子:物理量の確率を求める

前節までは波動関数で粒子の存在確率がどのように表現されるかを説明しました。似たような数式で、粒子の存在確率だけでなくエネルギーなどの物理量(観測量)の確率も表現することができます。その場合、単純に波動関数とその複素共役を掛けて積分するのではなく、物理量に対応する特別な記号を、波動関数で挟んで積分します。

例えば、ある物理量Aの期待値\langle A(\boldsymbol{r})\rangleを求めるためには、このような計算をします。

\begin{aligned}
\langle A(\boldsymbol{r})\rangle
& =\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\hat{A}\phi(\boldsymbol{r})d\boldsymbol{r}
\end{aligned}

\hat{A}演算子 operatorといわれる記号で、単なるAとは異なります。文字の上にある記号は「ハット」といい、\hat{A}は「エーハット」と読みます。演算子というと四則演算子[6]+, -, \times, \divを思い浮かべますが、量子力学の演算子はどちらかというと微分演算子を想像するのが分かりやすいと思います。

例として下の式を使って説明します。

\frac{d}{dx}e^{ax}=ae^{ax}

上の式はe^{ax}を微分した結果、元のe^{ax}の係数にaが掛かっています。
見方を変えると、e^{ax}という関数に演算子を掛ける(作用させる)ことで、aという値が出力値として得られたように見えます。量子力学の演算子も同じように、演算子の後ろにある関数に何らかの操作を加えます。先ほどの式では\hat{A}\phi(\boldsymbol{r})に何らかの操作を行う演算子です。

量子力学では同じような文字でも意味が微妙に違う場合があります。今回の例では

  • A:物理量
  • \langle A(\boldsymbol{r})\rangle:物理量の期待値
  • \hat{A}:物理量を求めるための演算子

がそれぞれ意味合いが異なりますので注意しましょう。

内積:波動関数の類似性を調べる

波動関数が規格化されている(規格化定数Nが波動関数に含まれている)とすると、全空間の波動関数の確率はこのように書けます。

\begin{aligned}
\int_{-\infty}^{\infty}\phi^*(\boldsymbol{r})\phi(\boldsymbol{r})d\boldsymbol{r}=1
\end{aligned}

上の式のように、何らかの関数を掛け合わせてから全空間で積分した値を内積 inner/dot productといいます。規格化定数を求めるために行なった計算は、実は波動関数の内積を計算する式でもあります。

内積という言葉から連想されるように、関数の内積はベクトルの内積と根本的には同じ計算をしており、二つの関数やベクトルがどれくらい似通っているかを表しています。

ベクトルの内積のおさらい

例えば、ある3次元の二つのベクトル\boldsymbol{A}, \boldsymbol{B}の内積は次のように計算します。

\begin{aligned}
\boldsymbol{A} \cdot \boldsymbol{B}
&=
\begin{pmatrix}
-1 \\
-2 \\
3 \\
\end{pmatrix}
\cdot
\begin{pmatrix}
4\\
5\\
6\\
\end{pmatrix}
\\
&=(-1)\times4+(-2)\times5+3\times6 \\
&=4
\end{aligned}

内積が0のとき、二つのベクトルは「直交している」といいます。直交したベクトルの間には同じ成分を含みません。同じ成分を持たないベクトルとは、数学的には「一次独立」であるということです。
最も基本的な直交したベクトルは、x,y,z軸の基底ベクトルです。
反対に、規格化したベクトルの内積が1の時は幾何学的にベクトルが同じ方向を向き、二つのベクトルは全く同じ成分であることを表します。

関数もベクトルの内積と同じ計算であることを想像してもらうために、\phi(\boldsymbol{r})が無限の成分をもつベクトルだと思って、内積を計算してみます。
すると、ベクトルの内積は下のような成分同士を掛けた総和になります。

\begin{aligned}
\phi^* \cdot \phi
&=
\begin{pmatrix}
...\\
\phi^*_1\\
\phi^*_2\\
\phi^*_3\\
...\\
\end{pmatrix}
\cdot
\begin{pmatrix}
...\\
\phi_1\\
\phi_2\\
\phi_3\\
...\\
\end{pmatrix}
\\
&=\sum_{n=-\infty}^\infty \phi^*_n\phi_n
\end{aligned}

このように書き下すと、本来違う定義であったはずの関数の内積とベクトルの内積が同じような式に見えませんか?
もしもベクトルのnの刻み幅が微少量なら、積分で書いた内積の式と一致します。よって、ベクトルの内積も関数の内積も本質的には同じ計算をしています。波動関数が規格化されていると、内積の計算で値が0~1になるので、どれほど波動関数が似通っているのかわかりやすいです。この場合は内積が1なので波動関数同士が同じであることを示しています。

内積の定義は本来、関数の一方に複素共役を掛ける必要はないのですが、量子力学では波動関数が複素数なので虚部を消すために(ボルンの確率解釈を満たすために)、複素共役を取った関数と元の関数を掛けて計算します。

内積は異なる波動関数\phi_1^*(\boldsymbol{r})\phi_2(\boldsymbol{r})に対しても同じように計算することができます。そしてもし、

\begin{aligned}
\int_{-\infty}^{\infty}\phi_1^*(\boldsymbol{r})\phi_2(\boldsymbol{r})d\boldsymbol{r}
=0
\end{aligned}

のように何らかの関数の内積が0になる場合、「関数が直交する」といいます。関数も直交している場合、関数同士が同じ成分を持たないことを示しています。

さて、波動関数の話に戻りますが、異なる波動関数は一般的には直交していません。しかし、ユニタリー変換 unitary transformationという数学的操作を通して互いに直交した波動関数に変換することができます。
この記事ではこれ以上踏み込みませんが、こちらも他の記事で解説できたらと考えています。(制作中)

重ね合わせの原理:波動関数は足し合わせることができる

波動関数は互いに足し合わせることができ、その性質を重ね合わせの原理 principle of superpositionと言います。重ね合わせの原理を用いると、ある波動関数を別の波動関数の足し合わせで表現できます。
式を使って表現すると、ある波動関数\Phiファイ(\boldsymbol{r})は別の波動関数\phi_1^*(\boldsymbol{r})\phi_2(\boldsymbol{r})を使って、

\begin{aligned}
\Phi(\boldsymbol{r})=C_1\phi_1(\boldsymbol{r})+C_2\phi_2(\boldsymbol{r})
\end{aligned}

と書けます。C_1C_2は波動関数の混ざり具合を表す定数です。

波動関数は、直交した波動関数のようにお互いに同じ成分を含まない、全く異なる性質を持った波動関数(状態)同士も重ね合わせることができます。具体的には「上向きスピン」と「下向きスピン」と呼ばれる状態や、異なる電子軌道関数(s軌道、p軌道)などが挙げられます。

また、波動関数は二つだけでなく、理論上は状況に応じて無限個の波を重ね合わせることが出来ます。式で書くと、

\Phi(\boldsymbol{r})=\sum_{n=0}^{\infty}C_n\phi_n(\boldsymbol{r})

のように、無限個の波動関数の重ね合わせで別の波動関数を表現することが出来ます。
このように、ある波動関数を別の二つ以上の波動関数の重ね合わせで書くことを、「波動関数を展開する」といいます。複雑な波動関数を近似する手法として、別の波動関数で展開することが多くあります。波動関数の展開につきましては、代数的なシュレディンガー方程式の解説の際にでまとめようと思います。(制作中)

まとめ

今回は、波動関数の正体とその性質を紹介しました。波動関数の正体とその性質をまとめると次の通りです。

  • 波動関数とは状態を方程式に落とし込むために導入された関数
  • 直接的に観測できず、代わりに物理量を観測することで推測する
  • 二乗して絶対値を取った値が、粒子の確率密度を表す
  • 内積によって波動関数同士の類似性がわかる
  • 演算子と組み合わせて、物理量の確率を算出する
  • 波動関数同士を足し合わせて、別の波動関数を表現できる

このような波動関数の性質を駆使して、量子力学ではさまざまな物理現象を明らかにしていきます。

  • どのように波動関数を求めるのか
  • 波動関数の性質が量子力学の何に役立つのか
  • 物理学として波動関数にはどんな役割があるのか

などにつきましては、計算を行って初めて腑に落ちる部分もあるかと思います。
他の記事にシュレーディンガー方程式の解法をまとめる予定ですので楽しみにお待ちください(製作中)。


本記事は量子の世界をより身近に感じてもらうために厳密さに欠ける内容も入っています。

当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。

マサ: @masa_fpp03

Terminology

Terminology
1 数学や物理学で、なぜか分からないが天から降って湧いたように導入するとうまくいく式や解法のこと
2 F=ma
3 電界
4 磁界
5 力学的エネルギー
6 +, -, \times, \div
]]>
https://steem.jp/science/physics/what-is-wave-function/feed/02392
量子力学のエネルギーの単位【エレクトロンボルト eV】https://steem.jp/science/quantum-energy-electronvolt/https://steem.jp/science/quantum-energy-electronvolt/#respondWed, 23 Nov 2022 10:55:24 +0000https://steem.jp/?p=3625

量子力学では、普段私たちが無視するくらい小さなエネルギーを扱います。例えば、量子の世界の光は約[J]という非常に小さなエネルギーを持ちます。そのような非常に小さいエネルギーに対しては、私たちが普段エネルギーの単位に用いる ... ]]>

量子力学では、普段私たちが無視するくらい小さなエネルギーを扱います。例えば、量子の世界の光は約10^{-34}[J]という非常に小さなエネルギーを持ちます。そのような非常に小さいエネルギーに対しては、私たちが普段エネルギーの単位に用いるジュール joule [J]ではなく、エレクトロンボルト electronvolt [eV]という単位を使います。
今回は、小さな世界のエネルギーの単位であるエレクトロンボルトについて紹介します

量子のエネルギー単位

エレクトロンボルト Electronvolt

先ほど書いた通り、量子力学の理論から光[1]より正確には「光子」のエネルギーを計算すると約10^{-34}[J]の値が得られます。こうしたエネルギーのわずかな違いを表すための単位にジュール[J]を使っていたのでは、常に10のべき乗の指数が式に付くので、量子力学の単位として適していません。エレクトロンボルト[eV]ではなくジュール[J]で電子のエネルギーを見るのは、30cm定規で原子の長さを測っているようなものです。

そこで、電子などの小さい物質のエネルギーにはジュールの代わりに、電子1個が1[V]の電圧で加速されたときに電子が得るエネルギーを1とした単位が使われます。その単位のことを「エレクトロンボルト electronvolt」といいます。

ジュール[J]とエレクトロンボルト[eV]はどちらも同じエネルギーの式なので、互いに変換することができます。式を使ってジュール[J]からエレクトロンボルト[eV]への変換を丁寧に表すと、下の式のように書かれます。

\begin{aligned}
E
&=qV \\
&=1.602\times10^{-19}[\text{C}]\times1[\text{V}] \\
&=1.602\times10^{-19}[\text{J}] \\
&=1[\text{eV}]
\end{aligned}

qは電子一つが持つ電気の量を表す記号で、電気素量 elementary chargeといいます。単位はクーロン[C]です。
また、Vは電圧の記号で単位はボルト[V]です。電圧は変数と単位の記号がどちらも”V”で紛らわしいですが、斜体 italic typeが変数で、立体 roman typeが単位を表します。
式の通り、1[eV]は約10^{-19}[J]なので、非常に小さなエネルギーであるとわかります。
なぜエネルギーが電荷\times電圧で書けるのか興味のある人は、次の章にあるE=qVの導出をご覧ください。高校までの電磁気と微積・ナブラ演算子を既知として書いているので、上級的な内容かもしれません。

単位をジュールからエレクトロンボルトに変換する利点を理解してもらうために、例として自由電子という電子のエネルギーを[J]から[eV]に変換してみます。

\begin{aligned}
E
&=2.298\times10^{-25} [\text{J}] \\[3mm]
& =\frac{2.298\times10^{-25}}{1.602\times10^{-19}}[\text{eV}] \\[3mm]
& \approx1.434\times10^{-6}[\text{eV}]
\end{aligned}

式を見てわかるように、いくらか指数が小さくなりました。このように考えている状況に合わせて、わかりやすい数字に変換することが単位変換の大きな長所です。エネルギーをはじめ、単位はあくまで人間が作った「ものさし」なので、有効数字や考えている物理量[2]長さ、質量、時間、エネルギーなどの大きさに適するように、単位の変換は行われます。

自由電子のエネルギーの導出はこちらの記事で具体的に計算しています。

量子 Quantum ってなんだろう?

エレクトロンボルト[eV]がどれほど小さい値かを紹介したところで、今度は1eVに相当する光の波長を求めてみます。量子力学の光のエネルギーは

E=h\nu=\hbar\omega

という式で求められます。hはプランク定数という非常に小さい定数(6.626\times10^{-34}[J\cdots])で、\nu,\omegaはそれぞれ光の振動数 frequency、と角振動数 angular frequencyを表します。

また光速c=2.99792458\times10^{8}と振動数\nuにはこのような関係があります。

\begin{aligned}
c
&=\nu\lambda \quad [\text{m/s}]\\
\nu
&=\frac{c}{\lambda} \quad [\text{1/s}]
\end{aligned}

これらの関係から、光の波長は次のように求められます。

\begin{aligned}
E
& =\frac{hc}{\lambda}\\[5mm]
\lambda
& =\frac{hc}{E} \\[3mm]
& =\frac{6.626\times10^{-34}\times2.998\times10^8}{1.602\times10^{-19}} \\[3mm]
& \approx1.24\times10^{-6}[\text{m}] \\[3mm]
& =1240[\text{nm}]
\end{aligned}

この数値はおよそ近赤外線の波長に相当し、量子力学が見ている規模感や、波長とエネルギーの対応関係を大まかに把握するための基準となる大事な値です。

E=qVの導出

エレクトロンボルト[eV]は電気素量[C]と電圧[V]を掛けて定義されますが、そもそもなぜ”クーロン[C]”と”ボルト[V]”を掛けるとエネルギーの単位になるのでしょうか。
この疑問に対して、この章では一次元のクーロンの法則から出発して解説します。

まず、ある電荷q_2が作る電場(電界)[3]どちらも同じ意味ですが物理学では電場、工学では電界といわれる傾向にありますE_2によって、q_1に生じる力Fはこうなります。

\begin{aligned}
F
& =q_1E_2 \\[3mm]
& =k\frac{q_1q_2}{r^2} \quad [\text{N}]\\[5mm]
k
& =\frac{1}{4\pi\varepsilon_0} [\text{N} \cdot \text{m}^2/\text{C}^2]
\end{aligned}

\varepsilon_0は真空中の誘電率 dielectric constant/permittivity というもので、分極の度合いを表す量ですが、具体的な意味は今は気にしなくてOKです。この式ではEはエネルギーではなく電場の意味で置いています。物理学ではEはエネルギーの意味で使われることが多いです。電気と物理ではしばしば文字の置き方が違う場合があり、参考書を読んだり試験で文字を置くときの些細なストレスになります。

エネルギー保存則が成り立つときは、エネルギーUと力の間には次の関係があります。マイナスも忘れずに。

\begin{aligned}
& F=-\frac{\partial U}{\partial r} \quad[\text{N}]\\[3mm]
& U=-\int F{dr} \quad[\text{J}]\\[3mm]
\end{aligned}

なのでエネルギーはクーロン力を距離rで積分すれば求められます。

\begin{aligned}
U
&=-kq_1q_2\int\frac{1}{r^2}{dr} \\[3mm]
&=k\frac{q_1q_2}{r} \quad[\text{J}]\end{aligned}

ちょっと話は脱線しますが、電場Eと電圧[4](正確には電位)Vにもこんな関係があります。

E=-\text{grad}V=-\nabla V \quad[\text{V/m}]

電場は電位の勾配という意味です。一次元系ならこの式を使って

E=-\frac{\partial V}{\partial r}=-\frac{dV}{dr}\quad[\text{V/m}]

となるのでq_2による電位V_2はこうなります。

\begin{aligned}
V_2
& =-\int E_2{dr} \\[3mm]
& = -\int k\frac{q_2}{r^2}dr \\[3mm]
& =k\frac{q_2}{r} \quad [\text{V}]
\end{aligned}

この形はさっき求めたエネルギーの式の中にありましたね。つまり

\begin{aligned}
U
& =-q_1k\frac{q_2}{r}=q_1V_2 \\[3mm]
\therefore U
& =qV \quad[\text{J}]\\[3mm]
\end{aligned}

で無事エネルギーは電荷と電圧の積の形になることが証明できました。


今回の記事は以上になります。
本記事は量子の世界をより身近に感じてもらうために厳密さに欠ける内容も入っています。

当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。


マサ: @masa_fpp03

Terminology

Terminology
1 より正確には「光子」
2 長さ、質量、時間、エネルギーなど
3 どちらも同じ意味ですが物理学では電場、工学では電界といわれる傾向にあります
4 (正確には電位)
]]>
https://steem.jp/science/quantum-energy-electronvolt/feed/03625
量子力学の基礎的な用語・方程式・概念を学ぶhttps://steem.jp/science/physics/quantum-physics/terms-equations-concept/https://steem.jp/science/physics/quantum-physics/terms-equations-concept/#respondSat, 19 Nov 2022 00:00:00 +0000https://steem.jp/?p=3472

量子力学に出てくる、重要かつ基礎的な用語・方程式・概念をまとめました。 へ向けて、量子力学の外観を少しでも知ってもらえたらと思います。式番号は上から順についていますが、気にせず知りたい項目からご覧ください。 他の記事の公 ... ]]>

量子力学に出てくる、重要かつ基礎的な用語・方程式・概念をまとめました。

  • 量子力学に何となく興味がある人
  • 量子力学の勉強の入り口に立ちたい人
  • 何から勉強すればいいか分からない人
  • 量子力学を学び始めていて、用語の確認をしたい人

へ向けて、量子力学の外観を少しでも知ってもらえたらと思います。
式番号は上から順についていますが、気にせず知りたい項目からご覧ください。

他の記事の公開などに伴って、随時追記していく予定です。

量子 Quantum

量子力学では、これまで無視してきた原子一粒ほどの小さな物質の運動に焦点を当てます。

そこでのあらゆる現象は私たちが普段生活している世界とは根本的に違い、量子の世界の粒子や波動はお互いに波と粒子の性質を合わせ持ちます(波動と粒子の二重性)。

この波と粒の性質を合わせ持った小さな物質やエネルギーを量子と呼びます

量子に関する詳しい説明はこちらの記事にまとめています。

量子 Quantum ってなんだろう?

波動性と粒子性 Wave/particle nature

光や電子は「波動」と「粒子」の二つの性質を合わせ持ちます。この性質を発見した実験の一つが二重スリット実験です。

現象に応じて、波動性と粒子性のうちどちらか一方の性質だけが顕在化することがあります。
人間は光や電子の実態を観測できませんが、それらが作り出す量子現象には、ほぼ確実に二つの性質が根底にあります。

量子の持つ波動性と粒子性については、二重スリット実験を例に説明したこちらの記事が参考になります。

波動性と粒子性とは/二重スリット実験から多世界解釈まで

波動関数 Wave function

ニュートン力学には登場しない量子力学特有の概念で、「状態」を記述した関数です。

F=maなどの古典物理学の運動方程式では、状態自体を表した物理量(長さ、質量、時間など)や関数はありません。
しかし、量子力学の中では抽象的な状態そのものを関数として導入しています。

以下の式のように、位置と時間の関数 \phi, \psi で書かれることが多いです。

\phi(\boldsymbol{r},t), \psi(\boldsymbol{r},t)

確率解釈 Stochastic interpretation

波動関数は一般的に複素数であり、私たちの見ている世界では観測することができません。
しかし、波動関数に複素共役を取ったものと、元の波動関数を掛けると虚数が消え、正の実数となるので観測可能になります。この操作は波動関数に絶対値を取って二乗することと同じです。
すると波動関数の二乗絶対値した値と一体何なのか、私たちが観測可能な量とどんな関係があるのか、量子力学の成立に伴っていくつかの解釈が提唱されました。

その中で現在最もされているのが(ボルンの)確率解釈です。この説によると波動関数の二乗絶対値がその位置に粒子が存在する確率を表します。

粒子がある位置\boldsymbol xに存在する確率密度 probability density\rhoロー、波動関数を\phi(x)として確率解釈を式に表すと下のように書けます。

\begin{equation}
\rho(x)=\phi^*(x)\phi(x) \\[4mm]
=|\phi(x)|^{2}
\end{equation}

\phi^*(x)\phi(x)の複素共役を表しています。
一口に波動関数といっても何の波動関数を表すのかは様々ですが、例えば\phi^*(x)が電子の波動関数とすると、\rhoは電子密度を意味します。

もしも、波動関数が空間的に小さな領域に集中(局在)しているなら、微視的には粒子が確率的に存在していても、より大きいスケールの視点ではまるで一つの粒のように見えます。そういった意味で確率解釈は粒子性と波動性の両方をうまく取り込んだ解釈と言えるでしょう。

量子力学の波動関数が一体何を表しているのかは、専門家の間でも細かい解釈の違いがあります。

確率解釈につきましてはこれらの記事で詳しく紹介しています。

「ある」と「ない」が一つの不思議な世界/シュレディンガーの猫とは

シュレディンガー方程式 Schrödinger equation

シュレディンガーさんが提案した状態方程式で(1)式や(2)式のように表されます。

\begin{equation}
i\hbar\frac{\partial \phi(\boldsymbol r,t)}{\partial t}=\mathcal{H}\phi(\boldsymbol r.t)
\end{equation}
\begin{equation}
\mathcal{H}\phi(\boldsymbol r) =E\phi(\boldsymbol r)
\end{equation}

(1)式を「時間依存シュレディンガー方程式」(2)式を「時間に依存しないシュレディンガー方程式」といいます。
必ずしもそうではありませんが、波動関数の時間変化を見たい時は(1)式、ある波動関数の持つエネルギーを見たい時は(2)式といった使い方がされます。

(1)式の右辺にあるEはエネルギーの次元を持ち、エネルギー固有値 energy eigenvaluesとよばれます。

\mathcal{H}ハミルトニアン Hamiltonianといって、考えている粒子や波動のエネルギーを足し合わせた式です。中身は(3)式のように運動エネルギーとポテンシャルエネルギーの和で表されます。ポテンシャルエネルギーとは位置エネルギーのことです。

\begin{equation}
\mathcal{H}=\frac{\boldsymbol p^{2}} {2m}+V=-\frac{\hbar^{2}}{2m}\Delta+V
\end{equation}

シュレディンガー方程式は拡散方程式と呼ばれる微分方程式の形をしており、量子力学的現象をうまく記述することができます。
いくつかの方法でこれらの式の妥当性を証明することができますが、そもそもなぜこの式が成り立つのかについてはよくわかっていません。

注意点として、\mathcal{H}=Eと書いてはいけません。
量子力学では、ハミルトニアンは波動関数に何らかの数学的な操作を加える「演算子」として考えます。演算子を波動関数に作用させると、それによって波動関数から係数として何らかの値が出力されたり、波動関数自体の形が変化します。
前節で説明した波動関数と、波動関数に作用する演算子という二つの概念を方程式に落とし込むことで、ニュートン力学では考えられなかった量子的な効果を導き出すことができます。
逆に、演算子と波動関数を導入しないとニュートン力学と結果が等しくなって量子的な解が得られなくなります。

また、(3)式は運動量\boldsymbol pの項がラプラシアンで書かれた形に変わっていますが、こちらもニュートン力学では考えられない式変形です。

行列形式のシュレディンガー方程式

シュレディンガー方程式は式変形によって解析的 analyticalに解くほかに、代数的 algebraicな行列計算によっても解くことができます。

この時、シュレディンガー方程式は次のような行列の式になります。

\begin{equation}
\begin{pmatrix}
\mathcal{H_{11}} & \mathcal{H_{12}} \\
\mathcal{H_{21}} & \mathcal{H_{22}} \\
\end{pmatrix}
\begin{pmatrix}
\phi_1 \\
\phi_2\\
\end{pmatrix}
=
\begin{pmatrix}
E&0\\
0&E\\
\end{pmatrix}
\begin{pmatrix}
\phi_1 \\
\phi_2\\
\end{pmatrix}
\end{equation}

(5)式は線形代数の固有値方程式 characteristic equationの形をしています。
解析的には微分方程式ですが、代数的には固有値方程式の形をしているのが、シュレディンガー方程式の大きな特徴です。

式の意味を簡単に説明します。
(2)式の関数を使ったシュレディンガー方程式と(5)式を比較すると、ハミルトニアンが行列に、波動関数はベクトルの形に、エネルギー固有値は対角行列にそれぞれ変化します。
数学的に行列 matrixは、何らかのベクトルを別のベクトルに変換する操作をします。
一方、(5)式では左辺でハミルトニアンを波動関数に作用させて波動関数を変換させても、右辺で波動関数は変化していません。代わりにハミルトニアンが固有エネルギーに変化しています。言い換えると、波動関数にハミルトニアンを入力した結果、エネルギー固有値が出力結果として得られたということを表しているのです。

(5)式の各項の関係が量子力学と何の関係があるのかというと、ある波動関数のエネルギーを見ようと観測するということが、方程式上では左辺の波動関数にハミルトニアンを作用させることと対応しています。
そして、ある波動関数に対応するエネルギーがEとして観測されたということが、右辺と対応しています。

物理的には上のような対応関係がありますが、数式は単なる固有値方程式なので、エネルギーを求めるためには下に書いたような行列式を計算して固有値と固有ベクトルを求めることが、シュレディンガー方程式を解くことに相当します。

\begin{equation}
\begin{vmatrix}
\mathcal{H_{11}}-E & \mathcal{H_{12}} \\
\mathcal{H_{21}} & \mathcal{H_{22}} -E \\
\end{vmatrix}
=0
\end{equation}

ちなみに、(6)式を永年方程式 secular equationと呼ぶことがあります。
シュレディンガー方程式では(6)式を解いて得られた固有値のことを、固有エネルギーまたはエネルギー固有値、固有ベクトルを固有状態 eigenstateと呼びます。
代数的にはシュレディンガー方程式のエネルギーとは、固有値方程式を解いて得られる固有値のことを指すので、関数のシュレディンガー方程式でも代数版の呼び方と同じくEをエネルギー固有値と呼称します。

このように量子力学の大きな特徴として、解析と代数の両方で互いに等価な解法が存在します。
特に、代数的な解法は数値計算と非常に相性が良いことで知られています。

エルミート行列 Hermitean matrix

ハミルトン行列はエルミート行列 hermitian matrixと呼ばれる行列でなければなりません。
エルミート行列とは「複素転置行列が元の行列と等しくなるような行列」です。

\begin{equation}
H=H^\dagger=\begin{pmatrix}
\mathcal{H_{11}} & \mathcal{H_{a}+iH_b} \\
\mathcal{H_{a}-iH_b} & \mathcal{H_{22}} \\
\end{pmatrix}
\end{equation}

H^\daggerの肩に乗っている記号はダガー daggerといい「複素共役を掛けて転置する」という意味です。

演算子 Operator

量子力学では前述で説明したハミルトニアン演算子 operatorとみなす見方があります。普通、演算子と言えば四則演算子が思い浮かぶかと思いますが、量子力学で扱う演算子はどちらかというと微分演算子やナブラ演算子に近いです。

演算子を作用させることは波動関数に対する何らかの操作を表しています。例えば下の式を例にしましょう。

\begin{equation}
\frac{d}{dx}e^{ax}=ae^{ax}
\end{equation}

(8)式はe^{ax}を微分した結果、元のe^{ax}の係数にaが掛かっています。見方を変えると、関数に演算子を作用させる(入力する)ことで、aという値が出力結果として得られたように見えます。

今度はシュレディンガー方程式に対しても同じような見方をします。ハミルトニアンを\hat{\mathcal{H}}(エイチハット)という演算子であるとすると、(2)式は「波動関数にハミルトン演算子を作用させた結果、エネルギーが出力された」ように見えます。このとき、演算の前後で波動関数は変化しません。

このような操作は特定の別の演算子でも行うことができ、ハミルトン演算子のほかにもさまざまな種類が存在します。

例えばある状態の運動量や位置を求めたいときは、数式上では波動関数に運動量演算子や位置演算子という演算子を作用させることで表します。

このように、シュレディンガー方程式は演算子や行列によって状態(波動関数)を変化させたり、物理量などの情報を取り出すことができます。

ハミルトニアンの行列はエルミート行列であることが必須でしたが、演算子も同様にエルミート演算子と呼ばれる演算子でなくてはなりません。

オブザーバブル Observable


特定の演算子が持つ「観測量(長さ、時間、エネルギーなど)を取り出せる」性質をオブザーバブル observableといいます。

私たちは波動関数を直接観測することはできず、実験によって物理量を「観測・測定」して状態を求めます。実験による物理量の測定は、数式では波動関数にオブザーバブルな演算子を作用させることで表現します。

物理量は観測可能な実数なので、オブザーバブルな演算子には「作用させると実数が取り出せる」という条件が掛かってきます。その条件とは、演算子がエルミート演算子という演算子であることです。

交換関係 Commutation relations

行列計算では二つの行列のどちらを先にかけるかで、結果が変わることがありましたね。
同様に演算子も二つの演算子を入れ替えると結果が変わることがあります。

演算子の入れ替えに関して値がどのように変化するかを示した関係を交換関係と言います。

交換関係は二つの演算子\hat{A}, \hat{B}に対して次の計算をして確かめます。

\begin{equation}
[\hat{A},\hat{B}]=\hat{A}\hat{B}-\hat{B}\hat{A}
\end{equation}

(9)式の左辺は交換子 commutator、あるいはポアソン括弧式 Poisson bracketなどといい、互いに演算子を入れ替えて差をとる操作を行います。

もし(9)式の結果が0なら「交換関係が成り立つ」あるいは「可換かかんである」といい、演算子は自由に入れ替え可能です。しかし0でなければ演算子の入れ替えで得られる結果が変わります。

交換関係が成り立つ場合、二つの演算子に対して状態は一つに決まり同時固有状態 simultaneous eigenstatesをもつ」といいます。

それぞれの演算子がオブザーバブルかつ可換なら、二つの物理量は同時に観測することができます。

逆に可換でなければ、演算子のどちらかを先に作用させるかで状態が変わってしまうので、実験でも同じ状態に対して二つの物理量を同時に計測することはできません。

交換関係は不確定性原理の説明にも用いられます。

ハイゼンベルグの不確定性原理 Heisenberg uncertainty principle

位置と運動量を高精度に同時には求められないという原理です。

運動量を速度とした書籍やもありますが、確率解釈で説明したように粒子は確率的に存在します。そのため確率的に存在する粒子に対して速度は定義されないため、運動量で書く方が正確です。
逆に速度が定義されない確率的な粒子にも、運動量に相当する何かが存在するともいえます。

交換子で表現すると次の通りです。

\begin{equation}
[\hat{x},\hat{p}]=i\hbar
\end{equation}

(10)式は可換ではなく、同時固有状態を持ちません。したがって位置と運動量を同時に計測することができず、不確定性原理を満足します。


今回の記事は以上になります。
ご覧いただきありがとうございました。

少しでも興味がある方は、他の記事も読んでいただければ幸いです。さらに量子力学の理解度が深まるはずです。

当サイトで取り上げた記事のほか、Twitter でもさまざまな情報を発信していますのでよろしければフォローをお願いします。

マサ: @masa_fpp03

]]>
https://steem.jp/science/physics/quantum-physics/terms-equations-concept/feed/03472
プログラミング初心者のためのPython環境構築【Windows編】https://steem.jp/engineering/programming/python/install-python-and-pyenv-on-windows/https://steem.jp/engineering/programming/python/install-python-and-pyenv-on-windows/#respondWed, 16 Nov 2022 13:00:00 +0000https://steem.jp/?p=3323

プログラミング初学者の最大の障害はプログラミング自体の難しさや複雑さではありません。自分のパソコンでプログラミングをできるように準備すること(環境構築)こそが鬼門となります。 そこでこの記事では、プログラミング初心者の方 ... ]]>

プログラミング初学者の最大の障害はプログラミング自体の難しさや複雑さではありません。自分のパソコンでプログラミングをできるように準備すること(環境構築)こそが鬼門となります。

そこでこの記事では、プログラミング初心者の方でもWindows にPython をインストールする(あなたのパソコンでPython プログラムを動かせるようにする)手順を紹介します。

さらに付録として、複数のPython のバージョンを管理するツール(pyenv)のインストール方法もまとめました。将来的に複数のプロジェクトを担当するようになるとPython のバージョンを使い分ける必要性が出てきます。Pythonを始めるのに必須ではないのですが、せっかくなので一緒にインストールしてしまいましょう。

Python の環境設定

Windows ではPython をインストールする方法が大きく分けて2つあります。

  1. Microsoft Store でPython をインストールする
  2. 公式サイトからPython のインストーラー(Python をインストールするプログラム)をダウンロードし、実行する

1の方法が最も簡単なのですが、Microsoft Store でインストールされたPythonには操作できるファイルに制限がかけられます。(具体的に言うと、デスクトップやドキュメントなどの共有場所にアクセスできなくなります)

その他にも、Microsoft Store からインストールされたPython の安定性への指摘や、Microsoft Store にある偽物のPython による詐欺被害などが報告されているため、筆者としましては2の公式サイトからのインストールをお勧めします。

既にインストールされているか確認しよう

基本的に、過去にインストールされたPython は時間が経っても無くなることはありません。絶対にPython をインストールしたことがない自信がある方は次の「公式サイトからPythonをインストールしよう」へ移動して下さい。

インストールされているかの確認にはコマンドプロンプト(Command Prompt) を使います。
因みにこのコマンドプロンプトはPython を実際に動かすときにも使えるのでタスクバーにピン留めすることをお勧めします。まだタスクバーにピン留めされていない人は、Windows ロゴキーとSを同時に押してパソコン内アプリを検索して開きましょう

以下の画像のように、検索窓に「コマンドプロンプト」と入力すると以下のようにコマンドプロンプトのアプリが表示されます。そしたらEnter キーを押すとコマンドプロンプトを開くことができます。

Windows 11でも検索できると思います

コマンドプロンプトが開いたら、以下のコマンドをコピーして、コマンドプロンプトに貼り付け、Enterを押して実行してください。

python -V

このコマンドは、現在インストールされているPythonのバージョンを表示するものです。

実行した時に、'python'は内部コマンド、もしくは外部コマンド、操作可能なプログラムまたはパッチプログラムとして認識されていませんと表示された場合はPython がインストールされていない証拠になります。

反対に、Python 3.10.2のようにPython 3.X.Xと表示された人はPython がインストールされています。早速Python を勉強するのも良いですが、せっかくなので「pyenv の環境設定」もお試しください。

公式サイトからPythonをインストールしよう

インストール手順を大きく分けると以下のようになります。

  1. 公式サイトからインストールするためのプログラム(インストーラー)をダウンロードする
  2. インストーラーを実行する

それぞれのステップに1, 2個の注意点があるので、それらを意識しながらインストールしましょう。

インストーラーのダウンロード

まずはPython 公式サイトの「Windows 用インストーラーダウンロードページ」を開きます。そうすると以下のような画面が出てくると思います。

太文字で書かれた「Python Releases for Windows」 の直後にある「Latest Python 3 Release – Python 3.X.X」リンクをクリックします。そうすると新しいページに移動するので、太文字で「Files」と書かれた場所までスクロールしましょう。

この表の一番下に「Windows installer (32-bit)」と「Windows installer (64-bit)」があります。

基本的にどのパソコンでも64-bit 版は動くようになっているので、確認するのが面倒だという人は「Windows installer (64-bit) 」をクリックしてダウンロードして下さい。

厳密に確認したい人は設定アプリから確認できます。Windows ロゴキーとIを一緒に押して設定アプリを開きます。設定アプリが開いたら「システム」>「バージョン情報」の順でクリックし、「デバイスの仕様」の「システムの種類」を確認して下さい。

一般的には64ビットだと思います

上記の「システムの種類」を参考にWindows installer (32-bit)かWindows installer (64-bit) のどちらかをクリックして、インストーラーをダウンロードします。

インストーラーを実行する

Chrome を使っている方は、画面左下にダウンロードした「python-3.X.X-amd….exe」が表示されているはずなのでそれをダブルクリックして実行しましょう。

Edge を使っている方は、Windows キーとEを一緒に押してエクスプローラーを開き、ダウンロードフォルダーにあるpython-3.X.X-amd64.exe (もしくはpython-3.X.X-amd32.exe)をダブルクリックしましょう。

ダブルクリックするとインストーラーが実行され、以下のような画面が表示されるはずです。Install Now を押す前に、Install launcher for all users とAdd Python 3.X to PATH のチェックボックスを必ずオンにしましょう

2つのチェックボックスのどちらにもチェックしたことを確認したら「Install Now」をクリックして下さい。
しばらく待つと、Python のインストールが完了したことを知らせるメッセージが表示されます。

動作確認をしよう

先ほどの「既にインストールされていない確認する」でコマンドプロンプトを開いている人は、1度コマンドプロンプトを閉じましょう。そしてまたコマンドプロンプトを開き直します。繰返しになりますが、Windows キーとSを一緒に押すとWindows 内を検索できます。

コマンドプロンプトを開くことができたら、もう1度以下のコマンドを実行します。

python -V

インストールしたバージョンPython 3.X.Xが表示されれば、無事にPython のインストールに成功したことになります。

Microsoft Store が表示されてしまうとき

これまで説明した通りのことを行ってきても、お使いのパソコンの設定によってはMicrosoft Store のPython のページが表示されるかもしれません。

そのような時は、設定アプリから「アプリと機能」>「アプリ事項エイリアス」を開き、アプリインストーラーをオフにすれば直るはずです。

念の為、コマンドプロンプトを開き直してみて下さい。

pyenv の環境設定

pyenvとは?

pyenvとは複数のPython のバージョンを管理できるようにするツールです。

Python を勉強中の方が、今から複数のPython のバージョンを管理することはまだないかもしれません。そんな初学者の方でも感じられる大きなメリットがあります。

それはズバリ、新バージョンのPython の新機能を試しやすくなるということです。

例えば、Python 3.8 以降から:= という演算子を使えるようになりました。この演算子を使えば同じプログラムを打つ回数を減らし、プログラムの読みやすさを向上させることができます。

user_input = input("パスワード: ")
while user_input != PASSWORD: print("パスワードが違います。もう一度入力して下さい。") user_input = input("パスワード: ")
while (user_input := input("パスワード: ")) != PASSWORD: print("パスワードが違います。もう一度入力して下さい。")

さらに、Python 3.9 以降からはzoneinfo というタイムゾーンを設定できる機能などが使えます。

from zoneinfo import ZoneInfo
from datetime import datetime
# 何も指定しなければグリニッジ標準時を表示します
print(datetime.now())
# => 2022-03-06 19:36:56.959459
# タイムゾーンを設定して、東京の現在時刻を取得します
print(datetime.now(ZoneInfo('Asia/Tokyo')))
# => 2022-03-06 19:36:58.200443+09:00

「だったらPythonのバージョンをアップグレードすればいいのでは?」
と言うのは自然な疑問ですが、例えば研究やプロジェクトで使用しているライブラリが新しいバージョンのPythonをサポートしていないときにアップグレードするのは得策ではありません。

「複数のバージョンを管理するツールならPythonより先にpyenv をインストールする必要があるのではないか?」
と感じる人もいると思います。実際にmacOS などでは先にpyenv をインストールしますが、Windows ではpyenv を単独でインストールできないので、先に公式サイトからPython をインストールしました

pyenvをインストールしよう

pyenvをインストールする

少々前置きが長くなってしまいましたので、先にpyenv をインストールするコマンドを紹介します。インストール中に説明を読んでみて下さい。

pip install pyenv-win --target %USERPROFILE%\.pyenv

pipはPython の拡張機能(ライブラリ)を管理するコマンドです。

例えば、高速な行列計算をしたいときはpipを使ってNumPy というライブラリをインストールしますし、AIをプログラムしたいときはTensorFlow やPyTorch などのライブラリをインストールします。

後半の--target %USERPROFILE%.pyenvは、pyenvのプログラム本体をC:\Users\あなたのユーザー名\.pyenv にダウンロードするように指定しています。

pyenvをコマンドプロンプトから呼び出せるようにする

残念なことに、ただインストールしただけではpyenvをコマンドプロンプトから呼び出すことができません。なぜなら、パソコンは「どこに実行可能なプログラムがあるか」を知らないとプログラムを実行できないからです。この実行可能なプログラムがある場所をパス path と言います。

Windows ではパスの情報をコントロールパネルで編集できます。

Win + Iで検索しましょう

コントロールパネルを開いたら、検索窓に「環境変数」と入力しましょう。そうすると以下のような結果が表示されるはずです。

この「環境変数を編集」をクリックすると新しい画面が表示されます。

その新しい画面の中の「[あなたのユーザー名]のユーザー環境変数」の下にある「Path 」という行を選択し、「編集」ボタンを押します。

そうすると今度は「環境変数名の編集」という画面が出てくるので、以下のテキスト情報を2つに分けて「新規追加」して下さい。

%USERPROFILE%\.pyenv\pyenv-win\bin
%USERPROFILE%\.pyenv\pyenv-win\shims

追加が終わったら、新規追加した2つの情報を「上へ」ボタンで1番上に移動します。

図のように一番上にあることを確認したら「OK」ボタンなどを押して、これまでに開いたコントロールパネルの画面を終了します。

基礎設定をしよう

動作確認の意味も含めて、Python のバージョン設定を済ませます。

まずは、pyenvでインストールできる最新のPython を検索します。新しく開いたコマンドプロンプトで以下のコマンドを実行して下さい。

pyenv install --list

ずらっと長い結果が表示されますが、ただ単に「3.X.X」と書かれているものを見つけて下さい。この記事を執筆時点での最新バージョンは3.10.2でした。

あとは実際にそのバージョンのPython をインストールして、パソコンのどこでも使えるように設定します。

pyenv install 3.10.2
pyenv global 3.10.2
pyenv versions

最後のコマンドは、pyenv にインストールされている全てのPython のバージョンを表示します。*がついているバージョンが、あなたが現在選択しているPython のバージョンです。私の場合は以下の結果が返ってきました。

* 3.10.2 (set by C:\Users\nariakik\.pyenv\pyenv-win\version)

似たような結果が返ってくれば成功です。お疲れ様です!

当サイトでは、プログラムを書くエディタとしてVSCode を推奨しています。その詳しいインストール方法などは後日記事にまとめます。

もし、初めてのPython プログラミングで何をしようか迷ったら以下の記事をお勧めします。この記事では、全くのプログラミング初心者の方でもポケモンワードルの制作を通してプログラミングの基礎を学ぶことができます。是非ご覧下さい。

]]>
https://steem.jp/engineering/programming/python/install-python-and-pyenv-on-windows/feed/03323
プログラミング初心者のためのPythonの環境構築【macOS編】https://steem.jp/engineering/programming/python/install-python-on-mac-with-pyenv/https://steem.jp/engineering/programming/python/install-python-on-mac-with-pyenv/#respondTue, 15 Nov 2022 13:00:00 +0000https://steem.jp/?p=3325

プログラミングで一番初めの大きな壁は環境構築です。それ故に一般的なPython講座などでは「Google Colabなどのネット上でPython プログラムを動かしましょう」とされることが多いです。 しかし、あなたのパソ ... ]]>

プログラミングで一番初めの大きな壁は環境構築です。
それ故に一般的なPython講座などでは「Google Colabなどのネット上でPython プログラムを動かしましょう」とされることが多いです。

しかし、あなたのパソコン上でPython を動かせるようになるメリットは大きく分けて2つあります。

1つはあなたのパソコン内のファイル、フォルダをPython で編集できること。
例えば、仕事で使う機密のエクセルファイルを処理するにはネットにアップロードせずに自分のパソコンで処理する必要があります。そこまで重要なデータを扱わずとも、「1年以上更新していないファイルを検索して全て削除する」「デスクトップにあるPNG画像だけを1つのフォルダにまとめる」などのちょっとした整理整頓にも役立ちます。

2つ目はオフライン時でも作業できること。田舎のホテルに泊まる時や飛行機で移動するときなどネットの繋がらない環境でも研究や仕事が行えるのは便利ですよ。

このようにPython を自分のパソコン上で使える大きなメリットがあるのでぜひ挑戦しましょう。必要な情報はしっかりとこの記事だけでまとめているので大丈夫です!

Python のインストールに使うmacOSのアプリはTerminal です。Terminal の場所がわからない方は、command⌘とスペースを同時に押し、Terminal と入力すると検索結果が表示されると思います。

Python3が既にインストールされているかの確認

Terminal を開き、以下のコマンドを1行ずつ実行して下さい。

python -V
python3 -V

上記のどちらかのコマンドの結果がPython 3.X.Xの人はこの記事を読む必要はありません。

反対に、結果がPython 2.X.Xcommand not found: python3と出た人はこの記事を読んで、python3コマンドを使えるようにしましょう。

因みに、Python 2.X.X のサポートは2020年1月にサポートの切れているので、Python 2に不具合やセキュリティ問題があっても将来的に直されることはありません。

作業の流れ

brewとは、macOSの初期設定では使えないコマンドを追加したり削除したりできるツールです。
brewはPython 3のインストールに必須なだけではなく、これからJavaScript やRust などの他のプログラミング言語に挑戦したいと思ったときにも使うツールなので、しっかりと使えるようにしましょう。

pyenvは複数のPython を管理することのできるツールです。なぜそんなツールが必要なのかについては後述します。

大本命のPython 3のインストールです。ここまでの設定を終えているなら4個のコマンドを実行するだけでインストールできます

Python 3のインストールが成功したか、ちゃんとTerminal から呼び出せるかをテストします。
また、簡単なPython プログラムを作って実行してみます。

brewのインストール

とりあえず、以下のコマンドをTerminal 上で実行して下さい。おそらく実行には少し時間がかかるので、その間にHomebrewについて説明します。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Homebrewとは?

一言で説明すると、Homebrew はMac にない機能を追加したり更新したりできるツールのことです。

他の人がネット上で公開しているプログラムのことをパッケージと言い、それをインストールすることであなたのパソコン上で追加の便利な機能を使えるようになります。
インストールに必要なRubyプログラム(Formulae)も一緒に保持されており、brewはそのFormulaeに基づいて以下のようなインストールや更新、削除などをします。

  • パッケージのインストール
    • brew install ipythonipythonという名前のパッケージの取得&インストールを行います。
  • 一覧表示
    • brew list: 過去にインストールしたパッケージを一覧表示します。
  • Homebrew の更新
    • brew update: Homebrew 自体を最新のバージョンに更新し、インストールされたパッケージに最新版がないかを調べます。(実際に更新はしてくれません)
  • Homebrew とパッケージの更新
    • brew upgrade: Homebrew 自体と、インストールされている全てのパッケージを最新のバージョンに更新します。
  • パッケージの削除(uninstall)
    • brew uninstall ipython: アンインストールは名前通り、インストールとは反対のことをします。つまり、あなたのパソコンでipythonを使えないようにしてくれます。

brew のインストールは終わりましたでしょうか?正しくインストールされていることを確認するために以下のコマンドを入力して下さい。command not found: brew が出てこなければ成功です。

brew

pyenvのインストール

まずは先にインストールをしてしまいましょう。以下のコマンドを1行ずつ実行して下さい。

brew install pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
macOS 10.14 (Mojave) 以前を使っている方へ

macOS 10.15 のCatalina から、シェルがbash からzsh へと変わりました。機能的には大きな差はないのですが、zsh は設定情報を.zshrcに保存し、bash は.bash_profileに保存しています。

Mojave 以前のmacOS を使われている方はmacOS のアップグレードを検討するか、~/.zshrc を~/.bash_profile と置き換えながら実行して下さい

pyenvとは?

pyenv の名前は複数のPython の環境 environment を管理できることから由来しています。
pyenvを用いて複数のPython 環境を持つと、複数のアプリのメンテナンスが楽になります。

例えばあなたがWeb サイトを作ろうと思い、Python の他にWeb サイトを作るのに必要なライブラリをいくつかインストールしたとします。無事にそのWeb サイトの制作が終わったので、あとはそのWeb サイトでバグが出たら直すようにしています。
そのWeb サイトを見たあなたは友人は最新のAIを使った別のWeb サイトを作って欲しいそうです。しかし、そのAI用のライブラリをインストールするにはPython のバージョンをアップグレードする必要があるのですが、Python をアップグレードすると自分のWeb サイトの一部のライブラリが使えなくなります。

こんな板挟みの状態は、pyenv をインストールし複数のバージョンのPythonを管理できるようになることで解決できます。

pyenvの簡単な使い方

よく使うpyenvのコマンドを紹介します。今は流し読み程度で見ておくのがちょうど良いと思います。

  • pyenv install -l
    • インストールできるPython のリストを取得
  • pyenv install 3.X.X
    • 名前を指定してPython をインストール(3.10.2, anaconda3-5.3.1 など)
  • pyenv version
    • 現在使われているPython のバージョン
  • pyenv versions
    • インストールされている全部のPython のバージョン
  • pyenv global 3.X.X
    • パソコンの中のどこにいても使えるPython のバージョンの設定
  • pyenv local 3.Y.Z
    • 現在のフォルダ内のみで使えるPython のバージョンの設定
  • pyenv virtualenv 3.X.X app_name
    • 独立したPython の環境の作成
    • この中でPython やライブラリのバージョンを変えても元の環境には影響しない
  • pyenv activate app_name
    • 独立したPython 環境の有効化
    • Python やライブラリのバージョンを変えるときは、事前に有効化する
  • pyenv deactivate
    • 独立したPython の環境を抜け、元の環境に戻る

Pythonのインストール

実際にpyenv を使って環境を設定しましょう。

pyenv install -l
pyenv install 3.10.2
pyenv versions
pyenv global 3.10.2

1行目から説明します。

  1. インストールできるリストを表示します
  2. 表示されたリストの中から、最新のバージョンをインストールします
  3. インストールされた全てのPython のバージョンを表示し、無事にインストールされたことを確認します。
  4. 先ほどインストールしたバージョンのPython をパソコン上のどこでも使えるように設定します。

ここではブログ執筆時(3/1/2022)に最新のPython 3.10.2 をインストールしていますが、3.10.33.11.0 などがインストールできるようなら最新版をインストールすることをお勧めします。

動作確認

前回のコマンドに引き続き、Terminal 上でこの記事の一番初めに実行したpython3 -Vコマンドを実行してみましょう。Python あなたのインストールしたバージョン(ここではPython 3.10.2)が返って来れば成功の証です!

さて、ここで終わっても良いのですが、簡単なPython プログラムを作って実行してみましょう。以下のコマンドをTerminal で1行ずつ入力して下さい。

touch hello.py
open hello.py

このコマンドはhello.pyというファイルを作って開くというものです。

Python プログラムが書かれたファイルは.pyで終わるようになっていれば良いので、hello.pyではなくgood_evening.pyでも良いです。ただ、ファイル名にスペースを使うと後々面倒なのでスペースはアンダースコア(_)に置き換えて下さい。

開かれたアプリを使って、以下のプログラムを入力してみて下さい。

print("Hello, World!")

しっかりcommand⌘+Sで保存して、Terminal 上でhello.pyを実行します

python3 hello.py

Hello, World! と返ってきたでしょうか?これであなたも歴としたPython プログラマーです。

この後はプログラム編集アプリ(エディター)を準備するのもよし、実際に何か作ってみながらPython を勉強するのもよしです。読者の方にお役に立てそうな記事を以下に貼っておきます。本当にお疲れ様でした!

]]>
https://steem.jp/engineering/programming/python/install-python-on-mac-with-pyenv/feed/03325
iPadの標準アプリで使える全キーボードショートカット一覧https://steem.jp/engineering/all-keyboard-shortcuts-on-ipados/https://steem.jp/engineering/all-keyboard-shortcuts-on-ipados/#respondSat, 12 Nov 2022 12:30:44 +0000https://steem.jp/?p=3327

iPad では、iPad用のMagic KeyboardやMac用のワイヤレスMagic Keyboardを接続することでキーボードショートカットが使えます。 iPadでのキーボードショートカットを知ることで作業効率が上 ... ]]>

iPad では、iPad用のMagic KeyboardやMac用のワイヤレスMagic Keyboardを接続することでキーボードショートカットが使えます。

iPadでのキーボードショートカットを知ることで作業効率が上がるのはもちろんとして、今回紹介するキーボードショートカットの多くはmacOS でも使うことができます[1]使えない具体的なショートカットキーはfn🌐を使ったショートカット(Slide Over, Split View, Siri, ディクテーションなど)となります
より詳しくは「macOSの全キーボードショートカット一覧」をご覧ください。

さて、そんな便利なiPad用ショートカットキーは、アプリやホーム画面にてcmd ⌘を長押しすることで表示される以下のような画面から確認できます。

しかし、この記事ではiPadOS でも使えるmacOS のショートカットキーもまとめているのでショートカットキー愛好家にも気に入っていただけること請け合いです。

以下注意点に気をつけたら、目次を参考に気になったセクションからご覧ください。

先程の画像のように、iPadOS ではキーボードショートカットに用いるキーは以下のようなアイコンで表示されるため、この記事でも同じ表記を用います。

ブログでの表記キーボードでの表記Unicode
cmdU+2318
optionU+2325
shiftU+21E7
controlU+2303
🌐🌐U+1F310
spaceU+0020

例えば、iPad の検索機能を使うためのショートカットキーは⌘spaceと表記します。
また、見やすさのためにアルファベットを大文字で表記しているだけなので、shiftキー()を押す必要はありません。

システム全体

全てのアプリやホーム画面にて使えることができるショートカットです。

🌐H
⌘H
ホーム画面へ移動 Home
⌘ space検索
⌘tab ⇥App の切り替え
⌘を押したまま、tabキーを押すことで使った順にアプリを選択できる
⌘を押したまま、⇧tabキーを押すことで使った逆順にアプリを選択できる
🌐ADock を表示
⇧🌐AApp ライブラリを表示
🌐Qクイックメモ Quick Note
🌐SSiri
🌐Cコントロールセンター Control Center
🌐N通知センター Notification Center
🌐Mシステムのキーボードショートカットの表示
⌘を長押し現在開いているアプリで使えるキーボードショートカットの表示
⌘?現在開いているアプリで使えるキーボードショートカットの検索
🌐▲App スイッチャーを開く
🌐◀
🌐▶
前/次のAppに切り替える
⌃⌘Q画面をロックする
⇧⌘3スクリーンショット
⇧⌘4スクリーンショット
画面一枚を撮影し、即編集画面が開く

Split View, Slide Over

Split View とはiPad 画面を半分もしくは3:7で分割して、2つのアプリを画面に同時に表示できる機能です。似たようにSlide Over はメインのアプリとは別に独立した細長いアプリを表示できる機能です。

Split View でもSlide Over でも、キーボード入力が有効なのはフォーカスが当たっているアプリです。iPad でアプリにフォーカスを当てる方法はアプリを開いたりアプリをタップするなどの他に、フォーカスを当てるショートカットもあります。フォーカスが当たっているアプリはアプリ上部の・・・で確認できます。

右のSlide Over で開いているアプリにフォーカスが当たっています
メインで開いているアプリにフォーカスが当たっています
⌃🌐◀
⌃🌐▶
Split View で画面を左側/右側にタイル表示
⌃🌐▼現在Split View で開いているApp を切り替え
🌐 \Slide Over の表示と非表示を切り替える
⌥🌐◀
⌥🌐▶
現在開いているSlide Over を左/右に移動する
現在開いているSlide Over が有効なアプリを左/右のSlide Over に開く
🌐 `同時に開いているアプリ間でフォーカスを切り替える
🌐Fアプリをフルスクリーンにする Full screen

テキスト操作

🌐D音声入力 Dictation
🌐E絵文字 Emoji
⌘Z取り消し Undo
⇧⌘V“取り消し”の取り消し Redo
⌘A全選択 All
⌘X選択したテキストをカット
⌘C選択したテキストをコピー Copy
⌃Aカーソルを行頭に移動
⌃Eカーソルを行末に移動
⌥▶
⌥◀
次/前の単語に移動
⇧◀▲▶▼選択範囲の拡大/縮小
⌃Tカーソルの両隣の文字を置換 Transpose

ファイル Files

Apple の公式サイトなどでは、よくファイルとフォルダのことをまとめて項目(item)と呼んでいます。なのでこの記事でもファイルとフォルダの総称として「項目」という言葉を使います。

◀▲▶▼項目の選択
⇧◀▲▶▼項目の複数選択
⌘A項目を全選択 All
⌘O選択した項目を開く Open
⌘Y選択した項目をクイックルックする
⌘Wクイックルックを閉じる
⌘I選択した項目の情報を見る Info
⌘D選択した項目を複製する Duplicate
⌃⌘T選択した項目を”よく使う項目”に追加
return ⏎選択した項目の名前を変更する
delete ⌫選択した項目の削除
⌘C選択した項目のコピー Copy
⌘Vコピーした項目の貼り付け ペースト
⌥⌘Vコピーした項目の現在のフォルダに移動
⇧⌘N新規フォルダ
⌘↓選択したフォルダを開く
⌘↑親フォルダ(フォルダを内包しているフォルダ)へ移動
⌘F検索 Find
⌃⌘Sサイドバーを表示
⌘1アイコン表示
⌘2リスト表示
⌘3カラム表示
⌃⌘0グループを使用
⌃⌥⌘1名前で並べ替え
⌃⌥⌘2種類で並べ替え
⌃⌥⌘5日付で並べ替え
⌃⌥⌘6サイズで並べ替え
⌃⌥⌘7タグで並べ替え
⇧⌘F“最近使った項目”に移動 Recent
⇧⌘O“書類”に移動 Document
⇧⌘D“デスクトップ”に移動 Desktop
⌥⌘L“ダウンロード”に移動 Download
⇧⌘IiCloud Driveに移動
⇧⌘G“フォルダへ移動…”を開く
⌘K“サーバーへ接続”を開く
⌃⌘F(ファイルを開いているときのみ)フルスクリーンモードを切り変える
(ステータスバーやタイトルなどを隠す)

Safari

⌘T
⌘N
新規タブ
⌥⌘T右に新規タブを追加
⇧⌘N新規プライベートタブ
⌘L場所(検索バー)を開く
⌘リンクをタップリンクを新規タブで開く
(設定によって新規タブで開くかバックグラウンドで開くかが変わります)
⇧⌘リンクをタップリンクをバックグラウンドで開く
(設定によって新規タブで開くかバックグラウンドで開くかが変わります)
⌘Wタブを閉じる
⌥⌘Wその他のタブを閉じる
⌘S別名で保存
⌥リンクをタップリンクのページをダウンロード
⌘Iこのページをメールで送信
⌘A全てを選択 All
⇧⌘Aフォームに自動入力
⌘Fページを検索 Find
⌘E選択部分を検索
⇧⌘Bお気に入りバーを表示
⇧⌘Lサイドバーを表示
⇧⌘Rリーダーを表示
⇧⌘\タブの概要を表示 (タブの一覧表示)
⌘Rページを再読み込み Reload
⌘+
⌘-
サイトの拡大/縮小
⌘0実際のサイズ
⌃⌘1ブックマークを表示
⌥⌘Bブックマークを編集
⌘Dブックマークを追加…
⌃⌘2リーディングリストを表示
⇧⌘D開いているページをリーディングリストに追加
⇧リンクをタップリンクをリーディングリストに追加
⌃⌘3履歴を表示
⌘[
⌘]
戻る/進む
⌃⌘4“あなたと共有”を表示
⌃tab ⇥
⌥⌘→
次のタブを表示
⌃⇧tab ⇥
⌥⌘←
前のタブを表示
⌘1~⌘9数字に応じて、最初のタブ(1)から最後のタブ(9)のいずれかを開く
⌥⌘N空の新規タブグループ
⌥⌘[
⌥⌘]
前/次のタブグループを表示

メール Mail

「メールボックスの移動」のキーボードショートカットは人によって少し変わります。例えば以下のような順番でサイドバーに表示していると、⌘1を押すと”全受信”へ移動し、⌘5を押すと”フラグ付き”へ移動します。

⌘N新規メッセージ New
⇧⌘N新着メッセージを全て受信
⌘1-9登録しているメールアドレス1~9へ移動
⌘Lメッセージフィルタを有効にする
⌥⌘Fメッセージボックスを検索
⌃⌘Aメッセージをアーカイブ Archive
delete ⌫メッセージを削除
⌘Eメッセージを編集 Edit
⌘Rメッセージに返信 Reply
⇧⌘R全員に返信
⇧⌘Fメッセージを転送 Forward
⇧⌘Jメッセージを”迷惑メール”に移動 Junk
⇧⌘Lフラグ
⇧⌘U未開封にする Unread
⌘Pプリント
⌃T一番上へジャンプ
⌘J選択したメッセージへジャンプ
⌃⌘Sサイドバーの表示/非表示の切り替え

メールの編集

⇧⌘D送信
⌘Wキャンセル
⇧⌘Aファイルを添付
⇧⌘V引用としてペースト
⌘Bボールド Bold
⌘Iイタリック Italic
⌘Uアンダーライン Underline
⌘+ / ⌘ –大きく / 小さく
⌘ ’引用レベルを増やす
⌥⌘ ’引用レベルを減らす
⌥⌘BBcc を追加

メッセージ Messages

⌘N新規メッセージ New
⌘I詳細を表示 Infomation
⌘F検索… Find
⌃tab ⇥次のチャットへ行く
⇧⌃tab ⇥前のチャットへ戻る

メモ Notes

⌘N新規メモ
⌘Pプリント
⌘Fメモを検索
⌥⌘Fメモリスト検索
⌃⌘Sサイドバーを表示
⌘1メモをリストで表示
⌘2メモをギャラリーで表示
⌘3添付ファイルブラウザを表示
⌘return ⏎編集を終了
⌘Bボールド Bold
⌘Iイタリック Italic
⌘Uアンダーライン Underline
⇧⌘Tタイトル Title
⇧⌘H見出し Heading
⇧⌘J小見出し
⇧⌘B本文
⇧⌘M等幅 Monospace
⇧⌘7箇条書きリスト
⇧⌘8ダッシュ付きリスト
⇧⌘9番号付きリスト
⇧⌘Lチェックリスト
⇧⌘Uチェック済みにする
⌥⌘T表 Table
⌘]
⌘[
インデント/アンインデント

カレンダー Calendar

⌘N新規イベント
⌘F検索
⌘Eイベントを編集 Edit
⌘T今日を表示 Today
⌘Rカレンダーを更新 Refresh
⌘▶次の日、週、月、年に移動
⌘◀前の日、週、月、年に移動
⌘1日表示に切り替え
⌘2週表示に切り替え
⌘3月表示に切り替え
⌘4年表示に切り替え
⌥tab ⇥
⌥▶
⌥▼
次のイベントを選択
⇧⌥tab ⇥
⌥◀
⌥▲
前のイベントを選択

リマインダー Reminders

⌘N新規
⇧⌘N新規リスト
⌘Pプリント
⌘T期限を今日に設定
⌥⌘T期限を明日に設定
⌃⌘T全てを今日までの期限超過にする
⌘K期限を今週末に設定
⌥⌘K期限を来週に設定
⇧⌘C実行済みにする
⇧⌘Fフラグをつける
⇧⌘Tタグを追加する
⌘]
⌘[
リマインダーをインデント/アンインデント
⌘return ⏎編集を終了
⌘1今日のリストに移動
⌘2日時設定ありリストに移動
⌘3すべてのリストに移動
⌘4フラグ付きリストに移動
⇧⌘H実行済みを表示
⌘I選択中・編集中の情報を表示する

写真 Photos

⌘N新規アルバム
⌃⌘N新規共有アルバム
⇧⌘N新規フォルダ
⌘F検索 Find
⌃⌘Sサイドバーの表示/非表示の切り替え
⌘1“年別”に移動
⌘2“月別”に移動
⌘3“日別”に移動
⌘4“すべての写真”に移動
⌘Tアスペクト比
⌥⌘1よく使うフィルタを有効にする
⌥⌘編集済みフィルタを有効にする
⌥⌘写真フィルタを有効にする
⌥⌘ビデオフィルタを有効にする
⌘+
⌘-
拡大/縮小
⌘R反時計回りに回転 Rotate
⌥⌘R時計回りに回転
⌘E自動補正
⌘I情報を表示 Info
⌘S共有 Share
⌘L非表示
⌘D複製 Duplicate
⌘Pプリント Print
delete ⌫削除
.お気に入り
spaceビューアを閉じる
⌥space再生/停止の切り替え
return ⏎エディタを開く

マップ Maps

⌥⌘A“マップ”のアカウント…
⌥⌘1よく使う項目を全て表示
⌥⌘2履歴を全て表示
⌘N新規ウィンドウ
⌘T新規タブ
⌘Pプリント…
⇧⌘Dピンをドロップ
⌘F検索
⌘1詳細マップに切り替え
⌘2ドライブに切り替え
⌘3交通機関に切り替え
⌘4航空写真に切り替え
⌘+
⌘-
拡大/縮小
⌘0デフォルトの拡大/縮小率
⇧⌘▲北を上にする
⌘D3D表示と2D表示の切り替え
⌘L現在地に移動

ミュージック Music

⌘F検索
⌘▲
⌘▼
音量を上げる/下げる
⌘◀
⌘▶
前/次の曲へ
space再生と一時停止の切り替え
⌃⌘Sサイドバーを非表示
⌘N新規プレイリスト

Podcasts

⌘F検索 Find
⌘R配信を更新 Refresh
⌘N新規ステーション
⇧⌘NURLで番組を追加
⌃⌘Sサイドバーの表示/非表示を切り替える
space再生/停止を切り替える
⌘▶
⌘◀
次/前へ
⌘▲
⌘▼
音量を上げる/下げる
⇧⌘▶
⇧⌘◀
15秒スキップ/15秒早戻し
⌘L現在プレイしている番組を開く
⌥01/2倍速
⌥1標準速度
⌥21.25倍速
⌥31.5倍速
⌥42倍速

Terminology

Terminology
1 使えない具体的なショートカットキーはfn🌐を使ったショートカット(Slide Over, Split View, Siri, ディクテーションなど)となります
]]>
https://steem.jp/engineering/all-keyboard-shortcuts-on-ipados/feed/03327
Git使いにお勧めのTerminalショートカットキー7選https://steem.jp/engineering/programming/git/7-practical-terminal-shortcuts-for-git-users/https://steem.jp/engineering/programming/git/7-practical-terminal-shortcuts-for-git-users/#respondSat, 12 Nov 2022 02:00:00 +0000https://steem.jp/?p=3306

「Git 用のGUIアプリをわざわざ全部のデバイスにインストールするのは面倒だなー」とか「Terminal でよくGit を使うんだけどもっと楽できないのかなー」と感じたことはありませんか?そんな人のために、この記事では ... ]]>

「Git 用のGUIアプリをわざわざ全部のデバイスにインストールするのは面倒だなー」とか「Terminal でよくGit を使うんだけどもっと楽できないのかなー」と感じたことはありませんか?
そんな人のために、この記事ではTerminal 上でGit を最も効率よく使うためのキーボードショートカットを紹介します。

この記事ではなるべく便利なキーボードショートカットを厳選していますが、目次から「実際に使えるかもな」「使ってみたい」と感じられるものから見てみてください。なぜならショートカットキーを覚えるコツは、”実際に使ってみること”だからです。

修飾キーの表記について

修飾キーとは、command やoptionなどの、英数字のキーと組み合わせることでキーボードショートカットを実行するキーのことです。この記事では修飾キーやreturn キーをアイコンで表します。

  • command 
  • control 
  • shift 
  • option 
  • return 

例えば、command キーとshift キーを押しながらZを押すこと⇧⌘Z と表記します。
アイIとエルlを区別するためにアルファベットはすべて大文字で表記しますが、の表記がない場合はshiftを押す必要はありません。

また、入力するコマンドに空白(スペース)が必要なことを強調したい時には、git␣のようにで表します。

以前のコマンドに管理者権限を付け加えて実行し直す

半年に一度くらい「古いフォルダを削除するか」とrmコマンドを実行したけど管理者権限がないと言われ「あーー、確かにそうですね」と呟きながら、矢印キー()だけでコマンドの先頭に移動してsudoをつけ、実行し直したことはありませんか?

Apps % rm -r MyApp
rm: SeaMark/.git/objects/2e: Permission denied
rm: SeaMark/.git/objects: Permission denied
rm: SeaMark/.git: Permission denied
rm: SeaMark: Permission denied

直前のコマンドに管理者権限を付与したいだけならsudo !!で実現できます。

% sudo !!
sudo rm -r MyApp
Password: ⚿

しかし、それより前のコマンドに管理者権限を付与したい場合は矢印キーで履歴を遡る必要がありますね。
遡った以前のコマンドがどんなに長くても、以下の4つのショートカットキーで管理者権限を付与して再実行できます。

  1. : コマンド履歴(管理者権限がないコマンド)を表示
  2. ⌃A: カーソルを行の先頭に移動
  3. sudo␣をタイプ
  4. : カーソルがどこにあろうとreturn を押すだけでコマンドが実行されます。

comand not found: gti

おそらくgitを使ったことがある人の大半は、以下のようなミスをしたことがあるでしょう。

MyApp % gti push origin Release/macOS/NavigationSideBar
zsh: command not found: gti

打ち直すのは面倒ですね。そんなときは以下のショートカットコンビネーションをやってみましょう。

  1. : 直前のコマンド履歴(間違ったコマンド)を表示
  2. ⌃A: カーソルを行の先頭に移動
  3. ×2: カーソルをiに合わせる
  4. ⌃Ttiを転置 transpose する
  5. : カーソルがどこにあろうとreturn を押すだけでコマンドが実行されます。

ブランチ名やファイル名を最速ペーストする

git pullgit addのときなど、何度も何度も同じ名前をマウスで選択してコピーしてペーストすることはありませんか?しかもそれが長い名前だとマウスで選択するときに余計な文字や改行まで含まれたり…

以下のショートカットキーの組み合わせで、面倒な「マウスを使ってファイルパスを選択し、コピペする」を省略します。

  1. ⇧⌘ダブルクリック
    普通のダブルクリックは単語だけを選択しますが、⇧⌘を付け加えるとファイルパスを選択できます。
  2. ⇧⌘V
    Terminal 内で選択中のテキストをカーソルの場所にペーストします。
    クリップボードの内容は変わりません。

コツは⇧⌘を離さないことです。実際の2つのシチュエーションごとに、どのように活用できるか見てみましょう。

Git のブランチ名を最速ペーストする

  1. git branch⏎
  2. git pull origin␣まで入力
  3. “1” の結果で表示された目的のブランチを⇧⌘を押さえながらダブルクリック
  4. ⇧⌘を押さえたままVを押す
最速コピーをしたいならエイリアスを作ろう

残念ながら「⇧⌘Vで選択中のテキストをペーストする」はTerminal 上でしか使えません。GitHub やチャットでブランチ名を共有したいときは⇧⌘ダブルクリック+⌘C でコピーしましょう。

もっと速く現在のブランチ名をクリップボードにコピーしたい場合は以下のようなエイリアスを作っておきましょう。

alias gitb="git branch | grep '^\*' | cut -d' ' -f2 | pbcopy && echo 'copied'"

使い方は通常のコマンドのlspwdのようにgitbとだけ入力すれば良いです。
仕組みとしては簡単で、git branchの結果を見て、で始まる行のを除いてコピーするだけです。

長すぎるファイルパスを最速でgit addする

似たようなシチュエーションとして、変更が加わったファイルをgit addすることもよくあります。
ファイルパスが短い場合は入力中にTab を押すことでディレクトリ名やファイル名が補完されますが、ファイルパスが長くなるほどタイプする時間は比例して長くなってしまいます。

ブランチ名をペーストするのと基本的にやり方は変わりませんが、git add は何度も連続して実行することが避けられない時があります。そこで何度もgit add をタイプしなくていいような方法をまとめました。

  1. git status⏎
  2. git add␣までタイプする
  3. “1” の結果で表示された、目的のファイルパスを⇧⌘を押しながらダブルクリック
  4. ⇧⌘を離さずVを押す
  5. : コマンドを送信
  6. : 直前のコマンドの表示
  7. ⌃W: カーソルから左側の1単語を消す(ファイルパス部分をまるっと削除)
  8. “3” へ戻る

今書いているコマンドを中断する

で履歴を遡ってもお目当てのコマンドが見つからず、delete⌫ キーを何度も押してコマンドを削除していた時期が筆者にもあります。

長ったらしいコマンドを書いているけど実行せずに中断する方法は以下の2つの方法があります。

  • ⌃U: 行全体を削除する
    • ⌃Y⌃Uで消した内容の復活
  • ⌃C: ブレークする(コマンドを実行せずに、新しい行へ移動する)
    • ⌘.でも操作は同じ

エラーと一緒に送られてきたURL をすぐに開く

エラー関しての詳しい説明をすることなく、ただURL を返してきて「詳しくはここみてね」という扱いを受けることはよくあります。

Landmarks % git push -u origin main
Username for 'https://github.com': ***
Password for 'https://***@github.com':
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: Authentication failed for 'https://github.com/***/Landmarks.git/'

そんなときは、を押しながらURLをダブルクリックするとそのリンク先をデフォルトブラウザーで開いてくれます

チャットアプリで共有するとき

「このコマンドを打つとこのようなエラーが返ってきます」という文言を添えて、Terminal のスクリーンショットを送りたい時に活用してほしいのが以下の3つのコマンドです。

  • ⌘K: 画面をクリアする
  • ⌘+: フォントサイズを1段階大きくする
  • ⇧⌘▲: マーク間を選択する

因みに、Mac で1つのアプリを選択してスクリーンショットをとるショートカットは⇧⌘5です。

Terminal のスクショに余計な情報を入れない

Terminal スクショを共有して原因を同僚や先輩に尋ねるときは、なるべく聞きたい内容以外の情報(ノイズ)をスクショから減らすようにしましょう。(何がエラーの原因になるのかが全くわからない時は動画でも撮って聞くしかないですが…)

⌘Kは現在カーソルが表示されている行が一番上になるように画面をクリアします。この機能を有効活用して不要な情報を減らしてみましょう。

以前の画面を消さずに画面を整理するには

⌘Kは画面全体をクリーンするので、以前のコマンドや結果の情報まで消えてスクロールができない状態となります。そこまでしたくないという方は、⌃⌘Lを使って何も消さずにカーソルがある行を画面の一番上にするのが良いと思います。

全てのコマンド履歴を含んだスクリーンショット
必要な情報だけ取り出したスクリーンショット

フォントサイズを調整する

あのままのスクショでも良いのですが、ちょっとした改善点はまだあります。上のスクリーンショットのTerminal はフォントが小さくて少しだけ見にくいです。スクリーンショットを共有する際は⌘+でフォントを大きくしましょう。フォントを小さくする時は⌘-、元のサイズに戻すときは⌘0です。

僕はスクショを見るときにフォントサイズを気にしたときはないんですけどね。。
チームに40~50代の人がいるときには意識しましょう

実行したコマンドとその結果を最速でコピーする

また、最近のチャットアプリではチャット内にコードを挿入できるので、できれば画像だけでなく入力したコマンドとその結果のテキストデータを載せてあげるといいかもしれませんね。

そのような、コマンドと結果を選択したい時は⇧⌘▲で、マークごとに選択範囲を拡大することができます(⇧⌘▼でマークごとに選択範囲を縮小できることもあるのですが、うまくいかないときはescキーを押してやり直しましょう)。

⇧⌘▲でマーク間の選択
コマンドの結果だけをコピーしたい

コマンドは含めず、その結果だけを選択したい時は⇧⌘Aでマーク間を選択するのが速いです。

マークとは

マークとは、「returnキーや⌃C⌃Dを入力したときにつく目印」です。
マークが登録されている行の左端には[があり、ユーザーはその印(マーク)を頼りに過去のコマンドを効率よく探すことができます。

マークの設定はほぼ自動なのですが、以下のようにしてマークを設定しない、もしくはマークを削除することができます。

  • コマンドを実行する際に、⇧⌘を押しながらreturn を押すことで、その行だけマークを設定しない
  • メニューから「編集」>「マーク」>「プロンプトの行を自動でマーク」(Edit > Marks > Automatically Mark Prompt Lines)のチェックを外す
  • 既にコマンドを実行した場合は、トリプルクリックで行全体を選択して、⇧⌘Uでマークの解除

番外編: 履歴からコマンドを検索して表示したい

つい最近、「断片的にしか覚えていない、昔使った便利なコマンドをまた実行したい」と思うことがありました。この記事用に動画からGIF を作るコマンドです。コマンド名も”ffmp”なんとかしか覚えていませんし、そのオプションも完璧に忘れています。

そんな時はzshのショートカットキーの⌃Rを使いましょう。⌃Rはユーザーが入力した文字を使って過去のコマンドを検索し、マッチした結果を最近使った順に表示してくれます。百聞は一見にしかずということで、下のGIFを見るか是非ご自分の環境でやってみてください。

⌥▶, ⌃Wも活用しています

以下が、例として使った.movファイルから.gifファイルを作るコマンドです。多少の警告は無視して使っています。もし皆さんが試しに使ってみてまたいつか使いたいなと思ったときは⌃Rで検索してみてください。

ffmpeg -i in.mov -pix_fmt rgb24 -r 10 -f gif - > out.gif

その他のzshのキーボードショートカットキーは以下の記事にてまとめています。

まとめ

今回の記事では以下のショートカットキーをシチュエーション別に説明しました。

  • ⌃A: カーソルを行の先頭にどうする
  • ⌃T: カーソルの両隣の文字を転置する
  • ⇧⌘ダブルクリック: ファイルパスを選択する
  • ⇧⌘V: 選択中のテキストをペーストする
  • ⌃W: 1単語をまるっと消す
  • ⌘ダブルクリック: ダブルクリックしたURLを開く
  • ⌃U: 行全体を消す
  • ⌃C: ブレークする
  • ⌘K: 画面をクリアする
  • ⌘+: フォントを大きくする
  • ⇧⌘↑: マーク情報を使って選択範囲を拡張する
  • ⌃R: コマンド履歴の検索

紹介したショートカットキーが身についてきて、「もっと便利なショートカットキーを知りたい」と感じてきたら以下の記事をご覧ください。

私はもっと速い方法を知ってるよ!という方はぜひコメント欄や私のTwitterアカウントへのメンションで教えてください。

]]>
https://steem.jp/engineering/programming/git/7-practical-terminal-shortcuts-for-git-users/feed/03306