LoginSignup
4
5

More than 5 years have passed since last update.

【Python入門】Python初心者はこれだけでよし!入門編(part2)

Last updated at Posted at 2018-09-08

ども!Masaです。

なんのために共有するのか?

後で見返す自分の備忘録にするため。
書くことでより記憶に届けやすくするため。

そして、短時間で多くの学びがあるように
得た知識・体験したものの要点を共有します!
Pythonの初心者が自走できるようになるまでのあしあとを残すことによって、後から学習する人がどういう道のりをたどればいいのかわかるようにするために書きます!

疑問が解消されたり、不安が少しでも減ったら、左のいいねボタンをポチッとお願いします!

入門編(part1)はこちら

リスト

Pythonでリストを書くとこうなる。

py
list = ['apple','banana','orange']
print(list[0]) #apple

C言語などでいう「配列」と思えばOK。

リストへの追加、リストからの削除

appendメソッド

appendメソッドによって、リストの末尾に
新しく要素が追加されます。

py
list = ['apple','banana','orange']
list.append('peach') #['apple','banana','orange','peach']

extendメソッド

appendは指定したものをそのまま追加。
extendはリスト同士の結合(拡張にも見える)。

py
alist = [3, 1, 4]
alist.append([1, 5, 9])
print(alist) #[3, 1, 4, [1, 5, 9]]

blist = [3, 1, 4]
blist.extend([1, 5, 9])
print(blist) #[3, 1, 4, 1, 5, 9]

#extendの失敗例
clist = ['banana']
clist.extend('apple')
print(clist) #['banana','a','p','p','l','e'] #これに注意w

#正しくはこう
dlist = ['banana']
dlist.extend(['apple']) #[]で囲ってリストを引数にしている
print(dlist) #['banana', 'apple']

insertメソッド

py
list = ['A', 'B', 'C']

list.insert(1, 'D')
print(list)     # ['A', 'D', 'B', 'C']

removeメソッド

指定の「値」の要素を削除する
(ただし、複数存在する場合は、最初の1つのみが削除される)

py
list = ['A', 'B', 'C', 'B', 'D']
list.remove('B') #'B'という値を指定
print(list)     # ['A', 'C', 'B', 'D']

popメソッド

指定のインデックスの要素を削除する

py
list = ['A', 'B', 'C', 'B', 'D']
list.pop(1) #'B'の入っている2番目のインデックスを指定
print(list)     # ['A', 'C', 'B', 'D']

スライス

リストの中のコンマを境目にして、あたかもリストを切って(スライス)新しくリストを作成することができる。まずはサンプルをコピペしてみてくださいな。

python
list = ['apple','banana','orange']
slice1 = list[1:] #1つ目のコンマよりも右側をリストとして作成
print(slice)  #['banana', 'orange']

slice2 = list[:1] #1つ目のコンマよりも左側をリストとして作成
print(slice2) #['apple'] 

slice3 = list[:-1] #リストの後ろから1番目のコンマより左側をリストとして作成
print(slice3) #['apple','banana']

どういう法則になっているのか?ってのがコレ
[何番目のコンマの右隣の要素から : 何番目のコンマの右側の要素から左側とを : いくつ飛ばしでリストにしてね]
というルールでスライスされる。

つまり、、、他の例を出すと

python
list = [1, 2, 3, 4, 5, 6, 7, 8]
print(list[:: 2]) #リスト全部を2つ飛ばしでリストに。
#[1, 3, 5, 7]

print(list[1:: 2]) #リストの1つ目のコンマから右側を2つ飛ばしでリストに。
#[2, 4, 6, 8]

print(list[::-1]) #リスト全部を、-1飛ばし=「逆に」リストに。
#[8, 7, 6, 5, 4, 3, 2, 1]

print(list[3::-1]) #リストの3つ目のコンマの右の要素を軸にリスト全部を、逆にリストに。
#[4, 3, 2, 1]

辞書型(ディクショナリ)

基本的には、こう書く

python
dict = {'apple':1, 'banana':2, 'peach':3}
print(dict) #{'apple':1, 'banana':2, 'peach':3}
print(dict['apple']) # 1
print(dict['banana']) # 2

ポイントは「キー」と「バリュー」のセットであるということ。
「キー」がわかれば「バリュー」がわかる。
(「バリュー」がわかっても「キー」がわかるとは限らない)

リストと辞書型の内包表記

ふつー、数字が100までのlistをつくろうと思ったらこうだけど

python
list = [1,2,3,4,5,6,7,8,9,・・・,100] #100まで続ける

内包表記というものを使うとこう書くことができる!

python
list = [num for num in range(101)]
print(list)

辞書型でも内包表記は使うことができる。

ふつーに辞書をつくるとこうだけど

py
dict1 = {'apple':1,'banana':2,'cclemon':3}

2つのリストから内包表記で書くこともできる

py
list1 = ['apple','banana','cclemon']
list2 = [1,2,3]
dict = {i:j for i,j in zip(list1,list2)}
print(dict)

※ zip関数は2つのリストなどを同時にイテレーションするときに使うと便利な関数

最後に

Pythonを学習していると1行で書けるの!?という感動が多くハマってます。
もっともっと学習していきたいですね!

疑問が解消されたり、不安が少しでも減ったら
左のいいねボタンをポチッとお願いします!

ではではドロン!

処女作:エロ診断メーカー(共同製作:Kei)
https://ero-shindan.herokuapp.com/

Ed.D~Eros Driven Development~
https://storage.googleapis.com/edd-homepage/IntroductionEdD/index.html

入門編(part1)はこちら

参考文献

スライスについて
https://www.pythonweb.jp/tutorial/string/index11.html

insertメソッドについて
https://www.pythonweb.jp/tutorial/list/index7.html

4
5
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5