- ã·ãŒã±ã³ã¹éåã®èŠçŽ æ°ãæ°ããã€ã³ããã¯ã¹ãã¹ã©ã€ã¹ã§èŠçŽ åç §ã§ããã
- ãªã¹ãã«å¯ŸããŠä»£è¡šçãªæäœïŒèŠçŽ è¿œå ã»æ€çŽ¢ïŒãå®è¡ã§ããå¿ èŠã«å¿ããŠèª¿ã¹ãŠä»æäœãå®è¡ã§ããã
- å€éãªã¹ãã«å¯Ÿããæäœæã«æ³šæãå¿ èŠãªç¹ãçè§£ããã
str, list, tupleã«é¢ãããã¹ãŠã®æäœãèŠããŠããå¿
èŠã¯ãªãããããããããŒã¿åãã£ãããªãããããæäœããã«ã¯ã©ããããè¯ãã£ãã£ããã®ããã«ãå¿
èŠãªãšãã«èª¿ã¹ãŠäœ¿ããããã«ãªãããã·ãŒã±ã³ã¹éåã«éããããã°ã©ãã³ã°ã«ãããŠã¯ **APIããã¥ã¡ã³ãçã調ã¹ãŠäœ¿ã** ããšãå€ããããã¯ããã°ã©ãã³ã°èšèªã®ä»æ§ãå€å²ã«ãããããå¿
ãããå
šãŠã®æ©èœãå©çšããããã§ã¯ãªãããã§ããã調ã¹ãåã磚ããã
äžæ¹ãã©ã®ãããªããã°ã©ã ã«ãããŠãå
±éããŠäœ¿ãããšãå€ãæäœãããããããäžèšç®æšã§æ²ãã **èŠçŽ æ°ã«ãŠã³ããã€ã³ããã¯ã¹ãã¹ã©ã€ã¹ã«ããåç
§ããªã¹ããžã®è¿œå ã»æ€çŽ¢** ã ã
[stråãªããžã§ã¯ã](https://docs.python.org/ja/3.8/library/stdtypes.html#str)ã«ã€ããŠã¯åç
§ã ããã¿ãŠããããã现ããªæäœã«ã€ããŠã¯åŸæ¥æ±ãã
ãããŸã§ã«äœåºŠãå©çšããŠããstråãªããžã§ã¯ãã¯ãé åºã®ä»ããã·ãŒã±ã³ã¹ã®äŸã§ããã'abc' ã¯ãæåã« 'a'ããã®æ¬¡ã« 'b'ãæåŸã« 'c'ãšäžŠãã§ããæååã§ããããã®é çªãå
¥ãæ¿ãã£ãŠããŸããšç°ãªãæååã«ãªãããé åºãéèŠã ããã®ããã«é åºã®ä»ããèŠçŽ éåã {index}ã·ãŒã±ã³ã¹<ããŒããã-ã·ãŒã±ã³ã¹> ãšåŒã¶ã
é åºã®ãªãèŠçŽ éåã®ããšã¯åã« **{index}`éå<ãã
ããã-éå>`** ãšåŒã³ãPythonã§ã¯[{index}`setå`ãªããžã§ã¯ã](https://docs.python.org/ja/3.8/library/stdtypes.html#set-types-set-frozenset)ãæäŸãããŠããã
ãããŸã§ã«åºãŠããã·ãŒã±ã³ã¹ã¯liståãšstråã®2çš®é¡ã§ãããã©ã¡ããã€ã³ããã¯ã¹ã䜿ã£ãŠãæå®ããé çªã«ä¿åããŠããèŠçŽ ããžã¢ã¯ã»ã¹ããããšãã§ãããäŸãçºããŠã¿ããã
# liståãªããžã§ã¯ãã«å¯Ÿããåå¥èŠçŽ ã®åç
§äŸ
>>> data = [10, 20, 30, 40]
>>> len(data)
4
>>> data[0]
10
>>> data[3]
40
# stråãªããžã§ã¯ãã«å¯Ÿããåå¥èŠçŽ ã®åç
§äŸ
>>> len('abc')
3
>>> 'abc'[0]
'a'
>>> 'abc'[1]
'b'
>>> 'abc'[2]
'c'
>>> enemy = 'naltoma'
>>> enemy[0]
'n'{index}len颿°ã¯åŒæ°ã§æå®ããããªããžã§ã¯ãã®é·ãïŒèŠçŽ æ°ïŒãè¿ããââdata[0]ââ, 'abc'[0], enemy[0] ã¯ãå
šãŠ 0çªç®ã®èŠçŽ ãåç
§ ããäŸã§ãããé çªãæå®ããŠèŠçŽ ãåç
§ããã«ã¯ 倿°å[index] ã ãªããžã§ã¯ããã®ãã®[index] ãšããæžåŒã§èšè¿°ããã
:name: sequence-index-slicing
ã€ã³ããã¯ã¹åç
§è£è¶³ãã¹ã©ã€ã¹åŠç
ã€ã³ããã¯ã¹ãæå®ããéãPythonç¹æã®æžåŒã2ã€ããã
1ã€ç®ã¯ åŸãããæ°ãã ãšããæå®æ¹æ³ã§ããã[-1] ãšæå®ãããšãåŸããã1çªç®ããšããæå³ã«ãªããé ã¯0çªç®ããæ°ããããåŸãããéé ã«é¡ãããå Žåã«ã¯ã-1çªç®ã-2çªç®ã-3çªç®ããããã®ããã«æå®ã§ããã
ããã«å¯Ÿã㊠**len颿°ãçšããããšã§èŠçŽ æ°ã確èªããããšãã§ããããããã®å€ãå©çšããŠã€ã³ããã¯ã¹æå®ããããšãå¯èœ** ã ãäŸãã° ``len('abc')`` ã§ 3 ãåŸãããããã®ãšããäžçªæåŸã®èŠçŽ ã¯0çªç®ããæ°ãããš2çªç®ã«ããããã®2çªç®ãšããã€ã³ããã¯ã¹ã¯ãèŠçŽ æ° â 1ãã§ããããšãããæ¬¡ã®ããã«ããŠæåŸå°Ÿã®èŠçŽ ãåç
§ããããšãã§ãããïŒ**ä»ã®èšèªã§ã¯ãã®ãããªèãæ¹ã§åç
§ããããšãå€ã**ïŒ
```python
data = 'naltoma'
last = data[len(data) - 1]
print(last)
```
2ã€ç®ã®Pythonbç¹æèšè¿°ã¯ {index}ã¹ã©ã€ã¹<ãããã-ã¹ã©ã€ã¹>({index}slicing) ãšåŒã°ããŠãããxçªç®ããyçªç®ãŸã§ãšããããã«é£ç¶ããè€æ°èŠçŽ ãåãåºããã ãšãã«äœ¿ãèšè¿°æ¹æ³ãæäŸãããŠãããåè¿°ã®ããã«å€æ°dataã«ã·ãŒã±ã³ã¹ãä¿åãããŠãããšãããšã data[å§ãŸãã€ã³ããã¯ã¹:çµããã€ã³ããã¯ã¹] ãšãã圢åŒã§æå®ããããã®éãå§ãŸãã€ã³ããã¯ã¹ã®ããã©ã«ãå€ïŒçç¥ããéã®å€ïŒã¯0ã§ãããçµããã€ã³ããã¯ã¹ã®ããã©ã«ãå€ã¯ len(data) ã§ããããã®ããã data[:2] ã¯ãåé ãã2çªç®ãŸã§ããæå®ããŠããã'na' ãåŸããããdata[1:] ã¯ã1çªç®ããæåŸãŸã§ãã§ããã'altoma' ãåŸãããã確èªããŠã¿ããã
stråãªããžã§ã¯ããšãªã¹ãåãªããžã§ã¯ããäŸã«ã€ã³ããã¯ã¹åç
§ãã¹ã©ã€ã¹ãçºããŠããããã«ãèŠçŽ ãåç
§ããã ãã§ããã°ã©ã¡ããå
±éããæäœãå¯èœã§ãããäžæ¹ãstråãªããžã§ã¯ãã¯èŠçŽ ã倿ŽïŒ{index}immutableïŒãããããšãã§ããªãã®ã«å¯Ÿããliståãªããžã§ã¯ãã¯èŠçŽ å€æŽãå¯èœïŒ{index}mutableïŒã ãã³ãŒãäŸã§ç¢ºèªããŠã¿ããã
# ãªã¹ãã§èŠçŽ ã倿ŽããäŸ
scores = [40, 70, 100, 0]
print(len(scores)) # => 4
print(scores[0]) # => 40
print(scores[0:2]) # => [40, 70]
#scoresã®0çªç®ãäžæžãããã
scores[0] = 50
print(scores[0]) # => 50
print(scores) # => [50, 70, 100, 0]äžèšã³ãŒãäŸã§ã¯scoresã«ä¿åãããŠããã·ãŒã±ã³ã¹ã®0çªç®ã倿ŽããŠããæ§åã瀺ããŠãããåæ§ã®ããšãstråãªããžã§ã¯ãã«å¯ŸããŠå®è¡ããããšãããšããšã©ãŒã«ãªããïŒç¢ºèªããŠã¿ããïŒ
ãã®ããã«ãPythonã§ã¯å€ã倿Žã§ããã{index}`mutable`ïŒ{index}`倿Žå¯èœ<ãžããããã®ã-倿Žå¯èœ>`ïŒãã倿Žã§ããªãã{index}`immutable`ïŒ{index}`倿Žäžå¯<ãžããããµã-倿Žäžå¯>`ïŒããšãã屿§ãåã«ä»äžãããŠããããããŸã§ã«åºãŠãã int, float, str, list ã®äžã§ã¯ stråã ãã倿Žã§ããªãããã以å€ã¯å€æŽå¯èœã§ããããªãã**ããã§ãã倿Žã§ããªããšããã®ã¯ãäžéšã®èŠçŽ ã倿Žããããšãã§ããªãããšãã£ãŠããã ã** ã ãäŸãã°ã以äžã®ã³ãŒãã¯ãå
šäœã倿ŽããŠãããããããšã©ãŒã«ã¯ãªããªãã
```python
data = 'naltoma'
data = 'hoge'
```
strãªããžã§ã¯ããžã®å€æŽãå¯èœãã©ããã確èªããŠã¿ããã
````{dropdown} æ€èšäŸ
```python
# strãªããžã§ã¯ãã§äžéšã倿ŽããããšããŠããåºæ¥ãªãããšã®ç¢ºèªã
>>> name = 'naltoma'
>>> name[0]
'n'
>>> name[0] = 'b'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
# 倿°ãæ°ãã assign (çŽä»ã) ãçŽãããšã¯å¯èœã
>>> name = 'hoge'
>>> print(name)
hoge
```
````
{index}listå<ãããšãã-ãªã¹ãå>ãªããžã§ã¯ã({index}list) ã®åèŠçŽ ã¯ä»»æã®åãªããžã§ã¯ããåãããããªã¹ãå
ã®åãªããžã§ã¯ãã¯indexã«ããçŽä»ããããããªã¹ããäœãã«ã¯ã倧å¥ããŠæ¬¡ã®2éãã®æç¶ãã§è¡ãã
- æ¹æ³1: ãªã¹ããšããŠäœæããããªããžã§ã¯ããã«ã³ã
,ã§åæãã[ã]ã§å²ãã- äºåã«å šèŠçŽ ãããã£ãŠãããªããã¡ãã䜿ãããšãå€ãã
- æ¹æ³2: 空ã®ãªã¹ã
[]ãä»£å ¥ãã倿°ãäºãçšæããŠããããã®ãªã¹ãã«è¿œå ã»åé€ãã圢ã§ãªã¹ããçšæ(æŽæ°)ããã- äŸãã°ã80ç¹ä»¥äžã®åŠçäžèЧãäœããå Žåã¯ãäºåã«äžèЧãçšæããã®ã§ã¯ãªãç¹æ°ã確èªããªããäžèЧã«è¿œå ããŠãããšããåŠçã«ãªãã ããããã®ããã«åŠçéäžã§è¿œå ãããã¯åé€ããŠããå Žåã«ã¯ãã¡ãã䜿ãããšãå€ãã
# ãªã¹ãã®äœæäŸ(1): æåããå¿
èŠãªãªããžã§ã¯ããåæããŠçšæããã
# æç§æž p.58 ã®ã³ãŒãäŸãå°ãä¿®æ£
>>> list_ex = ['I did it all', 4, 'love']
>>> len(list_ex)
3
>>> print(list_ex[0])
I did it all
>>> print(list_ex[-1])
love
>>> print(list_ex)
['I did it all', 4, 'love']
>>> for i in range(len(list_ex)):
... print(list_ex[i])
...
I did it all
4
love
>>> for i in list_ex:
... print(i)
...
I did it all
4
love
# ãªã¹ãã®äžéšåïŒããã§ã¯list_ex[0]ïŒã倿ŽããŠã¿ã
>>> list_ex[0] = 3
>>> print(list_ex[0])
3
>>> print(list_ex)
[3, 4, 'love']# ãªã¹ãã®äœæäŸ(2): 空ã®ãªã¹ãã«ããªããžã§ã¯ãã远å ããã
>>> list_ex2 = []
>>> len(list_ex2)
0
>>> list_ex2.append(1)
>>> len(list_ex2)
1
>>> print(list_ex2)
[1]
>>> list_ex2.append('hoge')
>>> len(list_ex2)
2
>>> print(list_ex2)
[1, 'hoge']ä»ããå
šãŠã®æäœæ¹æ³ãèŠããå¿
èŠã¯ãªããé »åºãã +, append, inæŒç®åã«ããæ€çŽ¢ ã¯èŠããŠããããã以å€ã¯å¿
èŠã«å¿ããŠèª¿ã¹ãŠå©çšã§ããããã«ãªããã
- ãªã¹ãå士ã®çµåïŒ+æŒç®åïŒ
>>> list_ex3 = [1, 2, 3]
>>> list_ex4 = [4, 5, 6]
>>> list_ex5 = list_ex3 + list_ex4
>>> print(list_ex5)
[1, 2, 3, 4, 5, 6]
- list.append(object): listã®åŸãã«objectã远å ã
>>> list_ex3 = [1, 2, 3]
>>> list_ex3.append(1)
>>> print(list_ex3)
[1, 2, 3, 1]
- inæŒç®åã«ãããªã¹ãèŠçŽ ã®æ€çŽ¢
>>> 3 in list_ex3
True
>>> 10 in list_ex3
False
- list.count(object): listå ã«objectãããåæ°ãè¿ãã
>>> list_ex3.count(1)
2
- list.insert(i, object): listã®içªç®ã«objectã远å ããã
>>> list_ex3.insert(0, 'hoge')
>>> print(list_ex3)
['hoge', 1, 2, 3, 1]
- list.extend(other_list): listã®åŸãã«ãå¥ã®ãªã¹ãother_listã远å ããã
>>> list_ex3.extend(list_ex4)
>>> print(list_ex3)
['hoge', 1, 2, 3, 1, 4, 5, 6]
- list.remove(object): listã®é ããæ¢ããŠãããåãã«èŠã€ãã£ãobjectãåé€ ããã
>>> list_ex3.remove(1)
>>> print(list_ex3)
['hoge', 2, 3, 1, 4, 5, 6]
- list.index(object): listã®é ããæ¢ããŠãããåãã«èŠã€ãã£ãobjectã®ã€ã³ããã¯ã¹ãè¿ããããèŠã€ãããªããã°Errorãè¿ãã
>>> list_ex3.index(1)
3
- list.pop(index): list[index]ã®å€ãåé€ãã€ã€ãè¿ãã
>>> list_ex3.pop(0)
'hoge'
>>> print(list_ex3)
[2, 3, 1, 4, 5, 6]
- list.sort(): listãå°ããé (ascending order) ã«äžŠã¹çŽãã
>>> list_ex3.sort()
>>> print(list_ex3)
[1, 2, 3, 4, 5, 6]
- list.reverse(): listãéé ã«äžŠã¹çŽãã
>>> list_ex3.reverse()
>>> print(list_ex3)
[6, 5, 4, 3, 2, 1]
課é¡ã¬ããŒãã«å¯Ÿããæ¡ç¹çµæã®äžèЧãšã㊠``scores = [100, 90, None, 100]`` ãçšæããããšããããããã§ ``None`` ã¯stråã§ã¯ãªã[NoneTypeå](https://docs.python.org/ja/3.8/library/constants.html)ã®å€ã§ãããã¬ããŒããæªæåºã®ãããŸã æ¡ç¹çµæããªãããšãæå³ããŠãããšããã
- æ€èš1: scoresã«ã¯ãŸã 4ååã®æ¡ç¹çµæããç»é²ãããŠããªãã5人ç®ã®æ¡ç¹çµæãšã㊠``60`` ã远å ããæäœãæ€èšããã
- æ€èš2: æªæåºè
ãååšãããã©ããã倿ããæäœãæ€èšããã
````{dropdown} åçäŸ
```python
scores.append(60)
print(None in scores)
# inæŒç®åã䜿ã£ãã³ãŒãäŸ
if None in scores:
print('æªæåºè
ãããŸãã')
else:
print('æªæåºè
ã¯ããŸãã')
```
````
æç§æž 5.3.1ç¯ cloning ã®è£è¶³ã
foræã§å埩åŠçããããªããžã§ã¯ããšããŠãªã¹ããæå®ããŠããæäžã«ããã®ãªã¹ãèªèº«ã«å€æŽãå ãããšåäœããããããªãã
- äœæ
ãïŒ
- foræã¯ãªã¹ãã®å
šèŠçŽ ã«å¯ŸããŠå埩åŠçããéã«ãã€ã³ããã¯ã¹ãå
éšã§åç
§ããŠããããã
- å¯ŸåŠæ³
- (a) å埩åŠç察象ã®ã·ãŒã±ã³ã¹ãšããŠè©²åœãªã¹ããæå®ããªãã
- (b) å埩åŠçåã«ãªã¹ããè€è£œããå埩察象ã®ãªã¹ããšãç·šéçšã®ãªã¹ããåããŠå©çšããã
åé¡ã®ããã±ãŒã¹ãçºããŠããããäžèšã³ãŒãã¯ç¬¬1åŒæ°list1ãããšã«ã第2åŒæ°list2ãšéè€ããŠããèŠçŽ ã¯é€å€ïŒlist1.remove(e1)ïŒããã€ããã§æžããã³ãŒãã§ããã
def remove_dups(list1, list2):
for e1 in list1:
if e1 in list2:
list1.remove(e1)
l1 = [1, 2, 3, 4]
l2 = [1, 2, 5, 6]
remove_dups(l1, l2)
print(l1)
# -> æ³å®ã§ã¯[3,4]ã«ãªã£ãŠæ¬²ããããå®éã«ã¯[2, 3, 4]ã«ãªã£ãŠããŸãã
# äœæ
ãããªãã®ãã¯ãããã¬ã§ç¢ºèªããŠã¿ããã- äºåã«ãªã¹ããè€è£œããŠããå埩åŠçããäŸ
- äžèšã³ãŒãäžã®
list1[:]ã¯ããlist1ã®æåããæåŸãŸã§ããçç¥ããæžãæ¹ã - æç§æžã«ããéã
for e1 in list1[:]:ã«å€æŽããã ãã§ãOKã
- äžèšã³ãŒãäžã®
def remove_dups(list1, list2):
duplicate = list1[:]
for e1 in list1:
if e1 in list2:
duplicate.remove(e1)
return duplicate
l1 = [1, 2, 3, 4]
l2 = [1, 2, 5, 6]
result = remove_dups(l1, l2)
print(result)
print(l1)
ãªã¹ãã«ã¯ä»»æã®ãªããžã§ã¯ããå«ããããšãã§ãããããããªã¹ãã®èŠçŽ ãšããŠãªã¹ããå«ãããããšãå¯èœã ããã®ããã«ãªã¹ãåç §ãå«ããªã¹ãã®ããšãå€éãªã¹ããšåŒã¶ãæç§æžã®å³5.1ã5.3ã¯ããªã¹ããå¥ã®ãªã¹ããåç §ããŠãããå Žåã«ãçæ¹ã®ãªã¹ããžã®æäœãå¥ãªã¹ãã«ã圱é¿ãåãŒãããšãå¯èŠåããŠããäŸã§ãã
:name: fig5.2
æç§æžã®å³5.2: univs1ã¯techsãªã¹ããšivysãªã¹ããåç
§ããŠããã®ã§ãtechsãªã¹ããä¿®æ£ãããšãã®åœ±é¿ãåãããunivs2ã¯ä»ã®ãªã¹ããåç
§ããŠããªãã®ã§ã圱é¿ãåããªãã
# 2ã€ã®ãªã¹ã techs, ivys ãçšæã
>>> techs = ['MIT', 'Caltech']
>>> ivys = ['Harvard', 'Yale', 'Brown']
# å¥ã®ãªã¹ã univs1, univs2 ãçšæã
# univs1 ã¯ããªã¹ã techs ãš ivys ãèŠçŽ ãšããã
# univs2 ã¯ãæ¢å倿°ãšã¯ç¡é¢ä¿ã«æ°ããstråãªããžã§ã¯ããåæãããªã¹ããèŠçŽ ãšããã
>>> univs1 = [techs, ivys]
>>> univs2 = [['MIT', 'Caltech'], ['Harvard', 'Yale', 'Brown']]
>>> univs1 == univs2
True
# äžèšè£è¶³:
# ããªã¹ãå士ã®``==``ã¯ããé çªéãã«ä¿æããŠããå€ãçããããã ããå€å®ã
# ãã¡ã¢ãªç©ºéäžã¯ç°ãªãéšåãåç
§ããŠããŠããä¿æããŠããå€ãçãããã° True ã«ãªãã
>>> id(univs1) == id(univs2)
Flase
# äžèšè£è¶³:
# ã颿°idã¯ãæå®ããããªããžã§ã¯ãã®ãŠããŒã¯ãªIDïŒâäœæïŒãè¿ãã
# ãåäžãªããžã§ã¯ããæããªããIDãçãããªãã
# ãç°ãªããªããžã§ã¯ããæããªããIDãç°ãªãã
# ã=> å€ãšããŠçãããããªããžã§ã¯ããšããŠçããããšã§äœ¿ãåããå¿
èŠãããã
>>> print(univs1)
[['MIT', 'Caltech'], ['Harvard', 'Yale', 'Brown']]
>>> print(univs2)
[['MIT', 'Caltech'], ['Harvard', 'Yale', 'Brown']]
# äžèšã®ç¶æ
ããã
# techs ãç·šéïŒäžèšã§ã¯ techs[0] ãéãå€ã«å€æŽïŒãããšã
# techsãªã¹ããåç
§ããŠãã univs1 ã«ã圱é¿ãåã¶ã
>>> techs[0] = 'hoge'
>>> print(techs)
['hoge', 'Caltech']
>>> print(univs1)
[['hoge', 'Caltech'], ['Harvard', 'Yale', 'Brown']]
>>> print(univs2)
[['MIT', 'Caltech'], ['Harvard', 'Yale', 'Brown']]
# äžèšã®ç¶æ
ããã
# techs ãç·šéïŒããã§ã¯techsã®åŸãã«æ°ãããªããžã§ã¯ãã远å ïŒãããšã
# techsãªã¹ããåç
§ããŠãã univs1 ã«ã圱é¿ãåã¶ã
>>> techs.append('RPI')
>>> techs
['hoge', 'Caltech', 'RPI']
>>> univs1
[['hoge', 'Caltech', 'RPI'], ['Harvard', 'Yale', 'Brown']]
>>> univs2
[['MIT', 'Caltech'], ['Harvard', 'Yale', 'Brown']]æŒç®çµæããªã¹ããšããŠä¿åãããå Žåããªã¹ãã®äžã«æŒç®ãæžãããšãã§ãããå
·äœäŸãçºããŠã¿ãããäžèšã³ãŒãã® case 1 ã¯éåžžã®foræã§ã®äŸã§ãããããã{index}ãªã¹ãå
å
衚èš<ãããšãªãã»ãã²ããã-ãªã¹ãå
å
衚èš>ã§èšè¿°ãããã®ã case 2 ã ã
- (case 1) éåžžã®foræã§èšç®ããæžãæ¹ã
squares = []
for x in range(1,7):
squares.append(x**2)
print(squares)
# -> [1, 4, 9, 16, 25, 36]- (case 2) ãªã¹ãå å 衚èšã§ã®æžãæ¹ã
squares = [x**2 for x in range(1,7)]
print(squares)
# -> [1, 4, 9, 16, 25, 36]ãªã¹ãå å 衚èšãæžãããšã¯ã§ããªããŠãæ§ããªãããæžãããŠããã³ãŒããèªããããã«ãªããã
``data = ['a', 'b', 'c']``ãšããŠããŒã¿ãä¿åããŠãããã®ãšããããã®ãšãã倿°dataã«æåå'd'ãååšãããã©ããã確èªããååšããªãå Žåã«ã¯æåŸå°Ÿã«åœè©²æååã远å ããã³ãŒããå®è£
ããŠã¿ããã
````{dropdown} åçäŸ
```python
data = ['a', 'b', 'c']
target = 'd'
if target not in data:
data.append(target)
print(f'{data=}')
```
````
ãªã¹ãã«äŒŒããã®ã« {index}ã¿ãã«<ãã·ã-ã¿ãã«>ïŒ{index}tupleïŒåãªããžã§ã¯ã ããããæžåŒäžã®éãã¯ãªã¹ãã [] ã§å²ãã®ã«å¯Ÿããã¿ãã«ã¯ () ãçšããã ãã§ããããããã¿ãã«ã¯ immutable ã§ãããåŸããèŠçŽ ã远å ã»åé€ãããšãã£ãèŠçŽ å€æŽã¯ã§ããªãç¹ã倧ããç°ãªããèŠçŽ å€æŽã§ããªãã ãã®éããªãã°ãªã¹ãã®å£åçã§ãããªãããåŠçéåºŠãæ©ããšããã¡ãªããããããããã¯ããªã¹ããã¡ã¢ãªäžã®ã©ãã«ä¿åãããŠãããã確èªããªãã蟿ãã®ã«å¯Ÿããã¿ãã«ã¯ã¡ã¢ãªäžã«é£ç¶ããã¹ããŒã¹ã確ä¿ããŠå©çšããïŒã ãã倿Žã§ããªãïŒããã§ããã
# ãªã¹ãã®äŸ
>>> data1 = [10, 20, 30]
>>> data1[0]
10
# ã¿ãã«ã®äŸ
>>> data2 = (10, 20, 30)
>>> data2[0]
10
>>> data2[0] = 500 #äžæžãããããšãã
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignmentæ¬ææ¥ã§ã¯çŽæ¥çã«ã¿ãã«ãæäœããããšã¯æ®ã©ãªããã颿°ã®æ»ãå€ã§ã¯èªåçã«ã¿ãã«ã§è¿ãããŠããããšãæäœãæ©ãããå€§èŠæš¡ããŒã¿ã«å¯ŸããåŠççã«åããŠããããšãèŠããŠãããã
Excelã®ãããª2次å
ã»ã«ç©ºéãæ³åããŠã¿ããããªã¹ããçšãããšåèŠçŽ ã¯ç©ºéå
ã«æ£ãã°ã圢ã§ä¿åãããŠãããããã«å¯Ÿãã¿ãã«ã¯é£ç¶ããã»ã«ãšããŠä¿åãããŠããããã®ãããªããŒã¿æ§é ã®å·®ç°ãšç¹åŸŽã«ã€ããŠã¯2幎次ã®è¬çŸ©[ã¢ã«ãŽãªãºã ãšããŒã¿æ§é ](https://tiglon.jim.u-ryukyu.ac.jp/portal/Public/Syllabus/DetailMain.aspx?lct_year=2020&lct_cd=617005001&je_cd=1)ã§ç¿ããŸãã
- 埩ç¿
- é©å®éå»è³æåã³æç§æžãåç §ãããã
- äºç¿
- 5.6 Dictionaries