Python

怐Pythonå…„é–€šŸ”°ć€‘é–¢ę•°ć‚’ä½œęˆć™ć‚‹ļ¼’ēØ®é”žć®ę–¹ę³•ćØä½æć„ę–¹

ć‚µć‚¤ćƒˆć®ē§»č”Œå…ˆ

ä½æć„å§‹ć‚ć‚‹ćØä¾æåˆ©ć§ć—ć‚‡ć†ćŒćŖć„ć€Œé–¢ę•°ć€ć€‚
ä½æć£ćŸć“ćØ恌ćŖ恄äŗŗć‚„ć¾ć ę…£ć‚Œć¦ć„ćŖ恄äŗŗ恋悉恙悋ćØć€ć”ć‚‡ć£ćØ厄介ćŖ存åœØć‹ć‚‚ć—ć‚Œć¾ć›ć‚“ć€‚

Googleꤜē“¢ć§å‡ŗć¦ćć‚‹å…ˆäŗŗé”ć®ć‚½ćƒ¼ć‚¹ć‚³ćƒ¼ćƒ‰ć«ć‚‚ć€åæ…恚ćØčØ€ć£ć¦ć„ć„ć»ć©é–¢ę•°ćŒä½æć‚ć‚Œć¦ć„ć¾ć™ć€‚
ēš†ć•ć‚“恮äø­ć«ćÆ怌def function():怍悄怌lambda x:怍恌å‡ŗć¦ććŸēž¬é–“ć€ć€Žć†ć‚ć£…怏ćØę„Ÿć˜ć¦ć—ć¾ć†äŗŗ悂恄悋恧恗悇恆怂

恓恮čؘäŗ‹ć§ćÆ态PythonäøŠć§é–¢ę•°ć®ę©Ÿčƒ½ć‚’ęœ‰ć™ć‚‹ć€Œdef怍ćØ怌lambdać€ć®ä½æć„ę–¹ć‚„ę³Øꄏē‚¹ćŖ恩恫恤恄恦čŖ¬ę˜Žć—ć¾ć™ć€‚

参ē…§å…ƒļ¼šPython Documentationļ½œ4. More Control Flow Tools > 4.7. Defining Functions

é–¢ę•°ć®ę©Ÿčƒ½ćÆļ¼Ÿ

ꝑäŗŗļ¼‘
ꝑäŗŗļ¼‘

graph(2, 1) ć£ć¦å®Ÿč”Œć—ćŸć‚‰ć€

y=2x+1 ć®ć‚°ćƒ©ćƒ•ćŒå‡ŗåŠ›ć•ć‚ŒćŖ恄恋ćŖ恁ļ½ž

ꝑäŗŗA
ꝑäŗŗA

ggl_sjst(“ęø‹č°·”, “ē¾Žå®¹é™¢”) ć£ć¦å®Ÿč”Œć—ćŸć‚‰ć€

Googleꤜē“¢ć§ć€Œęø‹č°·ć€€ē¾Žå®¹é™¢ć€ćØå…„åŠ›ć—ćŸćØćć®

悵ć‚øć‚§ć‚¹ćƒˆć‚’å–å¾—ć—ć¦ćć‚ŒćŖ恄恋ćŖ恁ļ½ž

恓悓ćŖé”˜ć„ć‚’ļ¼ˆč‡Ŗåˆ†ć§ļ¼‰å¶ćˆć‚‹ćŸć‚ć«ē”Øę„ć•ć‚Œć¦ć„ć‚‹ę©Ÿčƒ½ć®ć“ćØ恧恙怂

def function_name(arg1, arg2, …):

é–¢ę•°ć‚’å®šē¾©ć™ć‚‹

def func_1():
  print("é–¢ę•°å®Ÿč”Œ")

def func_2(arg):
  return arg * arg


# é–¢ę•°å®Ÿč”Œ
func_1()    # >>> é–¢ę•°å®Ÿč”Œ
func_2(20)  # >>> 400

def ćÆć€é–¢ę•°ć‚’å®šē¾©ć™ć‚‹ćŸć‚ć«ä½æē”Øć™ć‚‹ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ć§ć™ć€‚

é–¢ę•°ć‚’å®šē¾©ć™ć‚‹ę‰‹é †ćÆ态

  1. def+åŠč§’ć‚¹ćƒšćƒ¼ć‚¹ć‚’čؘčæ°
  2. é–¢ę•°ć®åå‰ć‚’čؘčæ°
  3. äøøę‹¬å¼§å†…ć«å¼•ę•°ć‚’čؘčæ°ļ¼ˆå¼•ę•°ćŖ恗悂åÆļ¼‰
  4. ć‚³ćƒ­ćƒ³ć‚’čؘčæ°ć—ć¦ę”¹č”Œ
  5. ć‚¤ćƒ³ćƒ‡ćƒ³ćƒˆć‚’ęŒæå…„ć—ć¦é–¢ę•°ć«ęŒćŸć›ć‚‹å‡¦ē†å†…å®¹ć‚’čؘčæ°ć™ć‚‹

ä½œęˆć—ćŸé–¢ę•°ćÆć€é–¢ę•°å(å¼•ę•°1, å¼•ę•°2, …) ćØčؘčæ°ć™ć‚Œć°å®Ÿč”Œć•ć‚Œć¾ć™ć€‚

returnę–‡ć«ć‚ˆć‚‹ęˆ»ć‚Šå€¤

é–¢ę•°ć®å‡¦ē†ę–‡ć«ć€ć€Œreturn 怇怇怍ćØ恄恆čؘčæ°ć‚’č¦‹ćŸć“ćØć®ć‚ć‚‹ę–¹ćÆå¤šć„ćØę€ć„ć¾ć™ć€‚

return 怇怇恧å‡ŗåŠ›ć•ć‚Œć‚‹ć€‡ć€‡ć®ć“ćØć‚’ć€Œęˆ»ć‚Šå€¤ļ¼ˆć¾ćŸćÆčæ”ć‚Šå€¤ļ¼‰ć€ćØć„ć„ć¾ć™ć€‚
ęˆ»ć‚Šå€¤ćÆé–¢ę•°ć‹ć‚‰ļ¼‘恤恠恑å‡ŗåŠ›ć•ć‚Œć‚‹å€¤ć§ć€é–¢ę•°ćØ恗恦恮ļ¼ˆę­£å¼ćŖļ¼Ÿļ¼‰å‡ŗåŠ›å€¤ć«ćŖć‚Šć¾ć™ć€‚

returnꖇ悒čؘčæ°ć—ćŖćć¦ć‚‚é–¢ę•°ć‚’å®Ÿč”Œć™ć‚‹ć“ćØćÆć§ćć¾ć™ć€‚
ć¾ćŸć€returnꖇ恮ćŖć„é–¢ę•°ć‚’ä½æć†ćƒ—ćƒ­ć‚°ćƒ©ćƒ ć‚‚å¤šć€…ć‚ć‚Šć¾ć™ć€‚
ļ¼ˆä¾‹ćˆć°ć€tkinter恧ćÆé–¢ę•°ć®ęˆ»ć‚Šå€¤ć‚ˆć‚Šć‚‚å‡¦ē†č‡Ŗä½“ćŒåæ…要ćŖå “åˆćŒå¤šć„ćŸć‚ć€returnꖇ恮ćŖć„é–¢ę•°ć‚’ä½æć„ć¾ć™ć€‚ļ¼‰

ćØćÆ恄恈态returnꖇ恌åæ…要ćŖ堓面ćÆć‚‚ć”ć‚ć‚“ć‚ć‚Šć¾ć™ć—ć€ęˆ»ć‚Šå€¤ćÆé‡č¦ćŖå½¹å‰²ć‚’ę‹…ć„ć¾ć™ć€‚

ć€Œé–¢ę•°å†…ć®å‡¦ē†ć«åæ…要ćŖćƒ‡ćƒ¼ć‚æć‚’å¼•ę•°ćØ恗恦ęø”ć—ć€å‡¦ē†ēµęžœć‚’ęˆ»ć‚Šå€¤ćØć—ć¦å—ć‘å–ć‚‹ć€‚
ćć®ęˆ»ć‚Šå€¤ć‚’ä»–ć®å¤‰ę•°ć«ä»£å…„ć—ćŸć‚Šć€ä»–ć®é–¢ę•°ć®å¼•ę•°ćØć—ć¦åˆ©ē”Ø恙悋怂怍

ć“ć†ć„ć£ćŸå‡¦ē†ćÆć€ęˆ»ć‚Šå€¤ćŒćŖć‘ć‚Œć°ć§ćć¾ć›ć‚“ć€‚

returnę–‡ć®ęœ‰ē„”ć«ć‚ˆć‚‹å‡ŗ力ēµęžœć®é•ć„ć‚’äø‹čØ˜ć«ē¤ŗć—ć¾ć™ć€‚

def func_1():
  a = 2 + 2

def func_2():
  a = 2 + 2
  print(a)

def func_3():
  a = 2 + 2
  return a


# é–¢ę•°å®Ÿč”Œ
func_1()  # >>> 
func_2()  # >>> 4  ā† print()ć«ć‚ˆć‚‹å‡ŗ力
func_3()  # >>> 4  ā† é–¢ę•°ćØ恗恦恮å‡ŗ力

# print()恧å‡ŗ力
print(func_1())  # >>> None
print(func_2())  # >>> 4  None  ā† print()ć«ć‚ˆć‚‹å‡ŗ力ćØé–¢ę•°ćØ恗恦恮å‡ŗ力
print(func_3())  # >>> 4  ā† é–¢ę•°ćØ恗恦恮å‡ŗ力

# å¤‰ę•°ć«é–¢ę•°ć‚’ä»£å…„
x = func_1()
y = func_2()
z = func_3()
print(x)  # >>> None
print(y)  # >>> None  ā† é–¢ę•°ćØ恗恦恮å‡ŗåŠ›ćŒćŖć„ćŸć‚ć€ä»£å…„ć™ć‚‹å€¤ćŒćŖ恄
print(z)  # >>> 4  ā† é–¢ę•°ćØ恗恦恮å‡ŗåŠ›ćŒć‚ć‚Šć€å¤‰ę•°ć«ä»£å…„ć•ć‚Œć¦ć„ć‚‹

å¼•ę•°ć®čح定

é–¢ę•°å†…ć®å‡¦ē†ć«ć€Œé–¢ę•°å¤–ć®ćƒ‡ćƒ¼ć‚æ怍悒ä½æē”Ø恙悋恫ćÆć€é–¢ę•°å®šē¾©ć®éš›ć«å¼•ę•°ć‚’čØ­å®šć™ć‚‹åæ…č¦ćŒć‚ć‚Šć¾ć™ć€‚

å¼•ę•°ć®čØ­å®šć§ćÆ态ęø”ć•ć‚Œć‚‹å¼•ę•°ć®é †ē•Ŗć‚„å¼•ę•°ć®ęø”ć—ę–¹ćŖć©ć‚’ęŒ‡å®šć™ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚

å¼•ę•°ć«ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ć‚’ęŒ‡å®š

def func(arg1, arg2=5):
  num = arg1 * arg2
  return num


# arg1ć‚’ęŒ‡å®šć—ć¦å®Ÿč”Œ
func(2)  # >>> 10

# arg1ćØarg2ć‚’ęŒ‡å®šć—ć¦å®Ÿč”Œ
func(2, 10)  # >>> 20

é–¢ę•°ć‚’å®šē¾©ć™ć‚‹éš›ć«ć€å¼•ę•°ć«åÆ¾ć—ć¦ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ć‚’čØ­å®šć™ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚

ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ć‚’čØ­å®šć™ć‚‹ć“ćØć§ć€ćć®å¼•ę•°ćŒęø”恕悌ćŖć„å “åˆć§ć‚‚é–¢ę•°ćŒå®Ÿč”Œć•ć‚Œć¾ć™ć€‚

ć¾ćŸć€å®Ÿč”Œę™‚ć«ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ć‚’ęŒć¤å¼•ę•°ć«ćƒ‡ćƒ¼ć‚æć‚’ä»£å…„ć™ć‚‹ć“ćØ悂åÆčƒ½ć§ć™ć€‚

ć‚ˆć£ć¦ć€å…„åŠ›ć•ć‚ŒćŖ恄ćØå›°ć‚‹å¼•ę•°ć«ć¤ć„ć¦ćÆć€ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ć‚’čØ­å®šć—ć¦ćŠććØč‰Æ恄恧恗悇恆怂

å¼•ę•°ć®ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ćŒå¤‰åŒ–ć™ć‚‹åÆčƒ½ę€§

å¼•ę•°ć®ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ćŒč¾žę›ø悄ćƒŖć‚¹ćƒˆćŖć©ć®ć‚ˆć†ć«å¤‰ę›“åÆčƒ½ćŖćƒ‡ćƒ¼ć‚æć®å “åˆć€
čØ­å®šć—ćŸå€¤ć‹ć‚‰å¤‰åŒ–ć—ć¦ć—ć¾ć†å “åˆćŒć‚ć‚Šć¾ć™ć€‚

äø‹čØ˜ć®ć‚³ćƒ¼ćƒ‰ć®ć‚ˆć†ć«ć€ä½•åŗ¦ć‚‚ä½æē”Øć™ć‚‹é–¢ę•°ć‚’å®šē¾©ć™ć‚‹ćØćć«ćÆć€ä»®å®Ÿč”Œć‚’č”ŒćŖć„ćƒ‡ćƒ•ć‚©ćƒ«ćƒˆå€¤ćŒå¤‰åŒ–ć—ć¦ć—ć¾ć‚ćŖ恄恋ē¢ŗčŖć™ć‚‹ä½œę„­ćŒé‡č¦ć«ćŖć£ć¦ćć¾ć™ć€‚

def func(dic={"one": 1}, **keywords):
  for kwd in keywords:
    dic[kwd] = keywords[kwd]
    print(dic)

# å¼•ę•°ć‚’ęø”ć—ć¦é–¢ę•°å®Ÿč”Œ
func(two = 2)  # >>> {'one': 1, 'two': 2}
func(three = 3)  # >>> {'one': 1, 'two': 2, 'three': 3}
func(one = 4)  # >>> {'one': 4, 'two': 2, 'three': 3}
func(four = 4)  # >>> {'one': 4, 'two': 2, 'three': 3, 'four': 4}

ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ć«ć‚ˆć‚‹å¼•ę•°ęŒ‡å®š

def func(arg1, arg2="恊ćÆć‚ˆć†ć”ć–ć„ć¾ć™"):
  print(fr"{arg1}恕悓态{arg2}ļ¼")

name = "ęø”邉"
greet = "恓悓恫恔ćÆ"

# arg1ć‚’ęŒ‡å®šć—ć¦å®Ÿč”Œ
func(arg1=name)  # >>> ęø”邉恕悓态恊ćÆć‚ˆć†ć”ć–ć„ć¾ć™ļ¼
func(name)  # >>> ęø”邉恕悓态恊ćÆć‚ˆć†ć”ć–ć„ć¾ć™ļ¼

# arg1ćØarg2ć‚’ęŒ‡å®šć—ć¦å®Ÿč”Œ
func(name, arg2=greet)  # >>> ęø”邉恕悓态恓悓恫恔ćÆļ¼
func(arg2=greet, arg1=name)  # >>> ęø”邉恕悓态恓悓恫恔ćÆļ¼

# åŒć˜å¼•ę•°ć‚’ļ¼’å›žęŒ‡å®šć™ć‚‹ć“ćØćÆ恧恍ćŖ恄
func(name, greet, arg2="恓悓恰悓ćÆ")
# >>> TypeError: func() got multiple values for argument 'arg2'

keyword=valueļ¼ˆć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ļ¼‹ćƒ‡ćƒ¼ć‚æļ¼‰ć®å½¢ć§ęŒ‡å®šć™ć‚‹å¼•ę•°ć‚’ć€Œć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć€ćØć„ć„ć¾ć™ć€‚

ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć®ćƒ”ćƒŖ惃惈ćÆć€å¼•ę•°ć®é †ē•Ŗ恫ēø›ć‚‰ć‚ŒćŖ恄恓ćØ恧恙怂

ćƒ‡ćƒ¼ć‚æć ć‘ć®å¼•ę•°ļ¼ˆä½ē½®å¼•ę•°ļ¼‰ć‚’ęø”ć—ćŸå “åˆć€é–¢ę•°ćÆęø”恕悌恟順ē•Ŗć«å¼•ę•°ć‚’å‡¦ē†ć—ć¦ć„ćć¾ć™ć€‚
ćć®ćŸć‚ć€äŗˆęœŸć—恦恄ćŖ恄順ē•Ŗć«ć‚ˆć‚‹ć‚Øćƒ©ćƒ¼ćŒē™ŗē”Ÿć™ć‚‹åÆčƒ½ę€§ćŒé«˜ć¾ć‚Šć¾ć™ć€‚

äø€ę–¹ć§ć€ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć‚’ä½æć£ćŸå “åˆć€å¼•ę•°ć‚’ęø”恙ćØćć®é †ē•Ŗ恫ēø›ć‚‰ć‚ŒćŖć„ćŸć‚é–¢ę•°å®šē¾©ć®ę™‚ć«ęƒ³å®šć—ćŸå„å¼•ę•°ć«åÆ¾ć™ć‚‹å‡¦ē†ćŒč”Œć‚ć‚Œć¾ć™ć€‚

ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć®ę³Øꄏē‚¹ćØ恗恦ćÆ态仄äø‹ćŒęŒ™ć’ć‚‰ć‚Œć¾ć™ć€‚

  • 位ē½®å¼•ę•°ć®ć‚ćØ恫ęø”恕ćŖ恑悌恰ćŖ悉ćŖ恄恓ćØ
  • é–¢ę•°å®šē¾©ć®ę™‚ć«ęŒ‡å®šć—ćŸć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ä»„å¤–ć‚’ęø”恙ćØć‚Øćƒ©ćƒ¼ć«ćŖ悋

def function(parameter, *arguments, **keywords):

äøŠčØ˜ć®ć‚ˆć†ćŖé–¢ę•°å®šē¾©ć®čؘčæ°ę–¹ę³•ć‚’č¦‹ćŸć“ćØć®ć‚ć‚‹ę–¹ćÆå¤šć„ć®ć§ćÆćŖ恄恧恗悇恆恋怂

ćƒ©ć‚¤ćƒ–ćƒ©ćƒŖå†…ć®ćƒ”ć‚½ćƒƒćƒ‰ć«ć¤ć„ć¦ćƒćƒƒćƒˆć§čŖæć¹ć¦ćæ悋ćØć€ć“ć†ć„ć£ćŸčؘčæ°ćŒå¤šćč¦‹ć‚‰ć‚Œć¾ć™ć€‚

怌*arguments怍悄怌**keywords怍ćÆć€å¼•ę•°ć‚’ęø”ć™éš›ć®ę”ä»¶ć‚’č”Øć—ć¦ć„ć¾ć™ć€‚

怌*arguments怍ćÆć€å¼•ę•°ć‚’ā€ä½ē½®ļ¼ˆé †ē•Ŗļ¼‰ā€ć«ć‚ˆć£ć¦åˆ¤ę–­ć—ć¦ć„ć¾ć™ć€‚
怌**keywords怍ćÆć€å¼•ę•°ć‚’ā€ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ā€ć«ć‚ˆć£ć¦åˆ¤ę–­ć—ć¦ć„ć¾ć™ć€‚

äø‹čØ˜ć®ć‚³ćƒ¼ćƒ‰ć‚’ć”č¦§ćć ć•ć„ć€‚

def greeting(name, *sentence, **answer):
  print(fr"恊恉态{name}ļ¼ćŠćÆ悈恆ļ¼")
  for stc in sentence:
    print(stc)
  print("Q1. 恩恆ē­”ćˆć‚‹ļ¼Ÿ")
  for ans in answer:
    print(ans, ":", answer[ans])

cvst_1 = "ćŖ悓恋ēœ ćć†ć ć­"
cvst_2 = "å¤œę›“ć‹ć—ć§ć‚‚ć—ćŸļ¼Ÿ"

# å¼•ę•°ć‚’ęø”ć—ć¦é–¢ę•°å®Ÿč”Œ
greeting("ęø”邉", cvst_1, cvst_2,
         A="ć‚²ćƒ¼ćƒ ć‚„ć‚Šć™ćŽćŸ", B="恗态恗恦ćŖ恄悈", C="å‹‰å¼·ć—ć¦ćŸ")

'''å®Ÿč”Œēµęžœ
恊恉态ęø”邉ļ¼ćŠćÆ悈恆ļ¼
ćŖ悓恋ēœ ćć†ć ć­
å¤œę›“ć‹ć—ć§ć‚‚ć—ćŸļ¼Ÿ
Q1. 恩恆ē­”ćˆć‚‹ļ¼Ÿ
A : ć‚²ćƒ¼ćƒ ć‚„ć‚Šć™ćŽćŸ
B : 恗态恗恦ćŖ恄悈
C : å‹‰å¼·ć—ć¦ćŸ
'''

å¼•ę•°ć‚’åˆ†ć‘ć¦č€ƒćˆć‚‹ćØ态

  • name ā†’ “ęø”邉”
  • *sentence ā†’ cvst_1, cvst_2
  • **answer ā†’ A=”ć‚²ćƒ¼ćƒ ć‚„ć‚Šć™ćŽćŸ”, B=”恗态恗恦ćŖ恄悈”, C=”å‹‰å¼·ć—ć¦ćŸ”

怌*sentence怍ćÆ态ęø”ć•ć‚ŒćŸå¼•ę•°ć®é †ē•Ŗé€šć‚Šć«å‡¦ē†ćƒ»å‡ŗåŠ›ć‚’č”ŒćŖć£ć¦ć„ć¾ć™ć€‚
怌**answer怍ćÆć€ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ćØå…±ć«ęø”ć•ć‚ŒćŸå¼•ę•°ć‚’å‡¦ē†ćƒ»å‡ŗåŠ›ć—ć¦ć„ć¾ć™ć€‚

ć–ć£ćć‚ŠčŖ¬ę˜Žć™ć‚‹ćØ态

怌*sentence怍ćÆ态ęø”ć•ć‚ŒćŸå¼•ę•°ć‚’ć‚æćƒ—ćƒ«ļ¼ˆäøøę‹¬å¼§ļ¼‰ć«ć¾ćØć‚ć¦é–¢ę•°å†…ć«å–ć‚Šč¾¼ć‚“ć§ć„ć‚‹
怌**answer怍ćÆć€ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć‚’ćƒžćƒƒćƒ”ćƒ³ć‚°åž‹ļ¼ˆäø­ę‹¬å¼§ļ¼‰ć§é–¢ę•°å†…ć«å–ć‚Šč¾¼ć‚“ć§ć„ć‚‹

ć‚æćƒ—ćƒ«ćÆäøøę‹¬å¼§å†…ć«ćƒ‡ćƒ¼ć‚æćŒå…„ć£ć¦ćŠć‚Šć€ćƒ‡ćƒ¼ć‚æ恮順ē•Ŗć‚’å¤‰ćˆćŸć‚Šćƒ‡ćƒ¼ć‚æ悒ē½®ćę›ćˆćŸć‚Šć™ć‚‹ć“ćØ恌恧恍ćŖ恄ļ¼ˆäøå¤‰ć®ļ¼‰é…åˆ—恧恙怂
ćƒžćƒƒćƒ”ćƒ³ć‚°åž‹ćÆ态{“name”: “country”, “Bob”: “America”, “Kevin”: “England”} ć®ć‚ˆć†ćŖåž‹ć‚’ć—ćŸćƒ‡ćƒ¼ć‚æć‚’ęŒ‡ć—ć¾ć™ć€‚

ć¾ćØ悁悋ćØ态
*argumentsļ¼šć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ćŖć—ć§å¼•ę•°ć‚’ęø”恙ļ½œå–ć‚Šå‡ŗć—ę–¹ćÆć‚æćƒ—ćƒ«ćØäø€ē·’
**keywordsļ¼šć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ć‚ć‚Šć§å¼•ę•°ć‚’ęø”恙ļ½œå–ć‚Šå‡ŗć—ę–¹ćÆćƒžćƒƒćƒ”ćƒ³ć‚°åž‹ćØäø€ē·’
ćØ恄恆恓ćØ恫ćŖć‚Šć¾ć™ć€‚

å¼•ę•°ć®ę”ä»¶ęŒ‡å®šļ¼ˆ / ćØ * ļ¼‰

def function(pos1, pos2, /, par1, par2, *, key1, key2):
  pass

é–¢ę•°ć‚’å®šē¾©ć™ć‚‹éš›ć«ć€å¼•ę•°ć®äø­ć«ć€Œ/怍ćØ怌*怍悒čæ½åŠ ć™ć‚‹ć“ćØ恧ęø”ć•ć‚Œć‚‹å¼•ę•°ć®ę”ä»¶ć‚’ęŒ‡å®šć™ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚

怌/ć€ć‚ˆć‚Šć‚‚å‰ć«ć‚ć‚‹å¼•ę•°ćÆć€Œä½ē½®å°‚ē”Øå¼•ę•°ć€ćØćŖć‚Šć€ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć‚’ęø”恙ćØć‚Øćƒ©ćƒ¼ćŒē™ŗē”Ÿć—ć¾ć™ć€‚
怌*ć€ć‚ˆć‚Šć‚‚å¾Œć‚ć«ć‚ć‚‹å¼•ę•°ćÆć€Œć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å°‚ē”Øå¼•ę•°ć€ćØćŖć‚Šć€ä½ē½®å¼•ę•°ļ¼ˆćƒ‡ćƒ¼ć‚æ恠恑ļ¼‰ć‚’ęø”恙ćØć‚Øćƒ©ćƒ¼ćŒē™ŗē”Ÿć—ć¾ć™ć€‚
怌/怍ćØ怌*ć€ć®é–“ć«ć‚ć‚‹ ć¾ćŸćÆ 恩恔悉悂ćŖć„å “åˆć®å¼•ę•°ćÆć€ä½ē½®å¼•ę•°ć§ć‚‚ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å¼•ę•°ć§ć‚‚ęø”恙恓ćØ恌åÆčƒ½ļ¼ˆé€šåøø通悊ļ¼‰ć§ć™ć€‚

ć“ć®ć‚ˆć†ćŖę”ä»¶ęŒ‡å®šć‚’č”ŒćŖ恆ē†ē”±ćÆ态

  • 位ē½®å°‚ē”Øå¼•ę•°ļ¼šå¼•ę•°ć®åå‰ļ¼ˆć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰ļ¼‰ćŒé–¢ę•°ć®å†…容ćØ関äæ‚ćŒćŖćć€é–¢ę•°ć‚’ä½æ恆äŗŗ恫ćØć£ć¦åæ…要恮ćŖć„ęƒ…å ±ć®å “åˆļ½œå¼•ę•°ć®é †ē•ŖćŒé‡č¦ćŖ堓合
  • ć‚­ćƒ¼ćƒÆćƒ¼ćƒ‰å°‚ē”Øå¼•ę•°ļ¼šå¼•ę•°ć®åå‰ćŒé–¢ę•°ć«ę·±ćé–¢ć‚ć£ć¦ć„ć¦ć€é–¢ę•°ć‚’ä½æ恆äŗŗ恫ćØć£ć¦ćć®åå‰ćŒåæ…要ćŖęƒ…å ±ć®å “åˆļ½œå¼•ę•°ć®é †ē•Ŗ恫ēø›ć‚‰ć‚ŒćŖć„ę–¹ćŒč‰Æć„å “åˆ

ć‚½ćƒ¼ć‚¹ć‚³ćƒ¼ćƒ‰ć‚’ę§˜ć€…ćŖäŗŗ恫ä½æć£ć¦ć‚‚ć‚‰ć„ćŸć„ćØč€ƒćˆćŸéš›ć«ę”ä»¶ęŒ‡å®šć‚’ä½æ恆恓ćØć§ć€ćƒ¦ćƒ¼ć‚¶ćƒ¼ć«ćØć£ć¦ē†č§£ć—ć‚„ć™ćä½æć„ć‚„ć™ć„ć‚³ćƒ¼ćƒ‰ć«ćŖ悋恮恧ćÆćŖ恄恧恗悇恆恋怂

lambda [arguments_list] : function

lambda x: x + 1  # >>> <function <lambda> at 0x000...>

func = lambda x: x + 1
func  # >>> <function <lambda> at 0x000...>

func(11)  # >>> 12
func(22)  # >>> 23

ćƒ©ćƒ ćƒ€å¼ćÆć€Œåå‰ć®ćŖć„å°ć•ćŖé–¢ę•°ć€ćØč”Øē¾ć•ć‚Œć¾ć™ć€‚

def ć§å®šē¾©ć™ć‚‹é–¢ę•°ć«ćÆåå‰ć‚’ä»˜ć‘ć‚‹ć“ćØćŒć§ćć¾ć™ćŒć€ćƒ©ćƒ ćƒ€å¼ć«ćć®ć‚ˆć†ćŖę©Ÿčƒ½ćÆć‚ć‚Šć¾ć›ć‚“ć€‚
ć¾ćŸć€ćƒ©ćƒ ćƒ€å¼ć®ę€§č³ŖćØć—ć¦ć€å‡¦ē†ę–‡ćÆ単äø€ć®å¼ć ć‘ć—ć‹ęŒ‡å®šć§ććŖ恄恟悁複雑ćŖ処ē†ć‚’č”ŒćŖ恆恓ćØ恫ćÆå‘ć„ć¦ć„ć¾ć›ć‚“ć€‚

ć—ć‹ć—ć€ćƒ©ćƒ ćƒ€å¼ćÆ def ć®ć‚ˆć†ć«å¼•ę•°ć‚’ęŒćŸć›ć¦ćć‚Œć‚’ä½æē”Øć—ćŸå‡¦ē†ę–‡ć‚’čؘčæ°ć™ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚
ć¾ćŸć€ć‚ć‚‹å¤‰ę•°ć«ć€Œå¼•ę•°ć‚’ęŒćŸć›ćŸćƒ©ćƒ ćƒ€å¼ć€ć‚’ä»£å…„ć™ć‚‹ć“ćØć§ć€ćć®å¤‰ę•°ć«é–¢ę•°ć®ę©Ÿčƒ½ć‚’ęŒćŸć›ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚

ćć—ć¦ć€ęœ€ć‚‚å„Ŗć‚ŒćŸę©Ÿčƒ½ćŒć€é–¢ę•°ćŒč¦ę±‚ć•ć‚Œć¦ć„ć‚‹å “ę‰€ć§ć‚ć‚Œć°ć©ć“ć§ć‚‚ä½æē”Ø恧恍悋ćØ恄恆ē‚¹ć§ć™ć€‚

é–¢ę•°ćŒč¦ę±‚ć•ć‚Œć¦ć„ć‚‹å “ę‰€ć«čؘčæ°ć™ć‚‹ć®ćÆ态åŸŗęœ¬ēš„ć«é–¢ę•°åć®ćæ恧恙怂
å¼•ę•°ć‚’ęø”恗恟ēŠ¶ę…‹ļ¼šé–¢ę•°å(å¼•ę•°1, å¼•ę•°2) 恧čؘčæ°ć™ć‚‹ćØć‚Øćƒ©ćƒ¼ć¾ćŸćÆč©²å½“ć™ć‚‹ćƒ”ć‚½ćƒƒćƒ‰ćŒäøŠę‰‹ćę©Ÿčƒ½ć—ćŖ恏ćŖć£ć¦ć—ć¾ć„ć¾ć™ć€‚

恝恓恧ä½æē”Øć™ć‚‹ć®ćŒćƒ©ćƒ ćƒ€å¼ć§ć™ć€‚

č¦ę±‚å “ę‰€ć«
lambda arg1, arg2: function(arg1, arg2)
ćØčؘčæ°ć™ć‚‹ć“ćØć§ć€é–¢ę•°ć«å¼•ę•°ć‚’ęø”恗恟ēŠ¶ę…‹ć§č¦ę±‚恫åæœć˜ć‚‹ć“ćØćŒć§ćć¾ć™ć€‚

ćƒ©ćƒ ćƒ€å¼ćÆć€å¤‰ę•°ćøć®ä»£å…„ć§ćÆćŖćé–¢ę•°ćŒč¦ę±‚ć•ć‚Œć¦ć„ć‚‹å “ę‰€ćø恮ä½æē”Ø悒ęŽØå„Øć—ć¾ć™ć€‚

利ē‚¹ć§ć€Œä»£å…„恧恍悋悈ļ¼ć€ćØčØ€ć£ć¦ćŠć„ć¦ć™ćæć¾ć›ć‚“^^;

ä¾‹ćˆć°ć€ć€Œå¼•ę•°ļ¼šxć€ć€Œå¼ļ¼šx+2ć€ć®å “åˆć€
怌f = lambda x: x+2怍ā†’ć€Œdef f(x): return x+2怍
ćØć™ć‚‹ć»ć†ćŒč‰Æ恄ćØ恄恆恓ćØ恧恙怂

ē†ē”±ćØ恗恦ćÆ态

  • ć“ć®å “åˆć€é–¢ę•°ćØć—ć¦ä½œęˆć—ćŸć„ć®ćÆćƒ©ćƒ ćƒ€å¼ć§ćÆćŖ恏态怌f怍ćØ恄恆恓ćØ怂
  • ćƒ©ćƒ ćƒ€å¼ć®ć€Œé–¢ę•°ćŒč¦ę±‚ć•ć‚ŒćŸå “ę‰€ćøåæć³č¾¼ć‚ć‚‹ć€ćØć„ć†åˆ©ē‚¹ćŒč–„ć¾ć‚‹ć“ćØ怂

ļ¼’恤ē›®ćÆćƒ©ćƒ ćƒ€å¼ćøć®ę€ć„ćŒęŗ¢ć‚Œć¦ć—ć¾ć£ć¦ć„ć‚‹ć®ć§ć€ćć“ć¾ć§ę°—ć«ć—ćŖćć¦å¤§äøˆå¤«ć§ć™ć€‚

ļ¼‘恤ē›®ćŒé‡č¦ć§ć™ć­ć€‚def ćÆć€Œé–¢ę•°å®šē¾©ć€ć‚’ę„å‘³ć—ć¾ć™ć€‚
é–¢ę•°ć‚’ä½œęˆć™ć‚‹ćØ恄恆ē‚¹ć«ćŠć„恦lambda ćÆ态def 恫ćÆćŖć„åˆ©ē‚¹ć‚’ęŒć£ćŸč£œåŠ©ēš„ćŖ位ē½®ć„恑恠ćØę€ć£ć¦ć„ć¾ć™ć€‚

ć§ć™ć®ć§ć€é–¢ę•°ć‚’ä½œć‚ŠćŸć„ćØ恍ćÆ def ć®ę–¹ćŒč‰Æ恄悓恘悃ćŖ恄恋ćŖļ¼ŸćØę€ć£ć¦ć„ć‚‹ę¬”ē¬¬ć§ć™ć€‚
恙ćæć¾ć›ć‚“ćŒć€ä½æć„ę…£ć‚Œć¦ććŸć‚‰ć§č‰Æć„ć®ć§č€ƒćˆć¦ćæć¦ćć ć•ć„ć€‚

ćƒ–ćƒ­ć‚°å†…ć§ćƒ©ćƒ ćƒ€å¼ć‚’ä½æē”Ø恗恦恄悋čؘäŗ‹ćÆ仄äø‹ć«ćŖć‚Šć¾ć™ć€‚å‚č€ƒć«ćŖ悌恰å¹ø恄恧恙怂

怐nfcpy & PaSoRi怑Python恧ICć‚«ćƒ¼ćƒ‰ć®IDm悒čŖ­ćæå–ć£ć¦ćæ悈恆
ē§ćŸć”ćŒę™®ę®µåˆ©ē”Ø恗恦恄悋ć‚Æ惬ć‚øćƒƒćƒˆć‚«ćƒ¼ćƒ‰ć‚„äŗ¤é€šē³»ICć‚«ćƒ¼ćƒ‰ćŖ恩恫ćÆ态SONYć®éžęŽ„č§¦ICć‚«ćƒ¼ćƒ‰ęŠ€č”“ę–¹å¼ć€ŒFeliCać€ćŒęŽ”ē”Øć•ć‚Œć¦ć„ć¾ć™ć€‚ć¾ćŸć€ćć‚Œć‚‰FeliCać‚«ćƒ¼ćƒ‰ć®ęƒ…å ±ć‚’čŖ­ćæå–ć‚‹ē«Æęœ«ćØć—ć¦ć€éžęŽ„č§¦ICć‚«ćƒ¼ćƒ‰ćƒŖćƒ¼ćƒ€ćƒ¼ļ¼ćƒ©ć‚¤ć‚æćƒ¼ć€ŒPaSoRiļ¼ˆćƒ‘ć‚½ćƒŖļ¼‰ć€ćŒåŒć˜ćSONY恋悉ćƒŖćƒŖćƒ¼ć‚¹ć•ć‚Œć¦ć„ć¾ć™ć€‚äø€ę–¹ć§ć€ćƒ—ćƒ­ć‚°ćƒ©ćƒŸćƒ³ć‚°č؀čŖžć€ŒPythonć€ć«ćÆ态PaSoRićŖć©ć®éžęŽ„č§¦åž‹ćƒ‡ćƒć‚¤ć‚¹ć‚’å‹•ä½œć•ć›ć‚‹ćŸć‚ć®ćƒ©ć‚¤ćƒ–ćƒ©ćƒŖ怌nfcpy怍恌ē”Øę„ć•ć‚Œć¦ć„ć¾ć™ć€‚ć“ć®čؘäŗ‹ć§ćÆ态nfcpyćØPaSoRi悒ä½æć£ć¦ICć‚«ćƒ¼ćƒ‰ć®IDmļ¼ˆICćƒćƒƒćƒ—ć®å›ŗęœ‰č£½é€ IDļ¼‰ć‚’čŖ­ćæå–ć‚‹ę–¹ę³•ć‚’ē“¹ä»‹ć—ć¾ć™ć€‚
怐tkinter怑Python恧YouTubeć®å‹•ē”»ć‚’ćƒ€ć‚¦ćƒ³ćƒ­ćƒ¼ćƒ‰ć™ć‚‹GUIć‚¢ćƒ—ćƒŖä½œęˆ
ä»„å‰ć€Pythonćƒ©ć‚¤ćƒ–ćƒ©ćƒŖ恮pytubeć‚’åˆ©ē”Ø恗恦YouTubeć®å‹•ē”»ć‚’ćƒ€ć‚¦ćƒ³ćƒ­ćƒ¼ćƒ‰ć™ć‚‹ę–¹ę³•ć‚’ē“¹ä»‹ć—ć¾ć—ćŸć€‚äøŠčØ˜ć®ę–¹ę³•ćÆć‚³ćƒžćƒ³ćƒ‰ćƒ—ćƒ­ćƒ³ćƒ—ćƒˆäøŠć§ę“ä½œć—ć¦ćŠć‚Šć€ćƒ—ćƒ­ć‚°ćƒ©ćƒŸćƒ³ć‚°ć«ę…£ć‚Œć¦ć„ćŖ恄äŗŗ恋悉恙悋ćØćØć£ć¤ćć«ćć„ćØę„Ÿć˜ć‚‹ć‹ć‚‚ć—ć‚Œć¾ć›ć‚“ć€‚ćć“ć§ć€ä»Šå›žćÆ動ē”»ć®ćƒ€ć‚¦ćƒ³ćƒ­ćƒ¼ćƒ‰ä½œę„­ć‚’GUIäøŠć§č”Œćˆć‚‹ć‚ˆć†ć™ć‚‹ćŸć‚ć€Tkinter悒ä½æć£ć¦GUIć‚¢ćƒ—ćƒŖć‚’ä½œęˆć—ć¾ć—ćŸć€‚ć“ć®čؘäŗ‹ć§ćÆ态Python恮GUI꧋ēÆ‰ćƒ©ć‚¤ćƒ–ćƒ©ćƒŖ怌Tkinterć€ć‚’åˆ©ē”Ø恗恦态YouTubeć®å‹•ē”»ć‚’ćƒ€ć‚¦ćƒ³ćƒ­ćƒ¼ćƒ‰ć™ć‚‹ćŸć‚ć®GUIä½œęˆę–¹ę³•ć‚’čŖ¬ę˜Žć—ć¾ć™ć€‚

ć¾ćØ悁

恓恮čؘäŗ‹ć§ćÆ态PythonäøŠć§é–¢ę•°ć®ę©Ÿčƒ½ć‚’ęœ‰ć™ć‚‹ć€Œdef怍ćØ怌lambdać€ć®ä½æć„ę–¹ć‚„ę³Øꄏē‚¹ćŖ恩恫恤恄恦čŖ¬ę˜Žć—ć¾ć—ćŸć€‚

é–¢ę•°ćÆč‡Ŗåˆ†ćŒę¬²ć—ć„ćØę€ć£ćŸå‡ŗåŠ›ć‚’ćć‚Œć‚‹ä¾æ利ćŖę©Ÿčƒ½ć§ć™ć€‚
恟恠恗态ꜛ悓恠å‡ŗåŠ›ć‚’ćć‚Œć‚‹é–¢ę•°ćÆč‡Ŗåˆ†ć§ä½œć‚‰ćŖ恑悌恰ćŖć‚Šć¾ć›ć‚“ć€‚

ä½æć„å§‹ć‚ćÆé›£ć—ć„ćØę„Ÿć˜ć‚‹ć‹ć‚‚ć—ć‚Œć¾ć›ć‚“ćŒć€å§‹ć‚ć¦ć—ć¾ćˆć°ę…£ć‚Œć‚‹ć¾ć§ćÆć‚ć£ćØ恄恆間恧恙怂
åˆ„ć«é–¢ę•°ćØć—ć¦ä½œć‚‰ćŖćć¦ć„ć„ć‚“ć˜ć‚ƒćŖ恄ļ¼ŸćØć„ć†å‡¦ē†ć«ć¤ć„ć¦ć‚‚ä½œć£ć”ć‚ƒć£ć¦ćć ć•ć„ļ¼

ę°—ä»˜ć‘ć°é©ęé©ę‰€ć§ä½æćˆć‚‹ć‚ˆć†ć«ćŖć£ć¦ć„ć‚‹ćÆ恚恧恙怂åæœę“ć—ć¦ć„ć¾ć™ć€‚

ć‚³ćƒ”ćƒ³ćƒˆ

ć‚æć‚¤ćƒˆćƒ«ćØURLć‚’ć‚³ćƒ”ćƒ¼ć—ć¾ć—ćŸ