Python Generator

>>> def make_counter(x):
	print('entering make_counter')
	while True:
		yield x
		print('incrementing x')
		x = x + 1

		
>>> counter = make_counter(2)
>>> counter

>>> next(counter)
entering make_counter
2
>>> next(counter)
incrementing x
3
>>> next(counter)
incrementing x
4
>>> next(counter)
incrementing x
5
>>> def fib(max):
	a,b = 0,1
	while a < max: yield a a,b = b, a + b >>> for n in fib(1000):
	print(n,end = ' ')

	
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 
>>> list(fib(1000))
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]
>>> 

Python Generator の話

K.Yairi のVintage Guitar

1981年の春ごろだと思うからもう40年近く前の話になる。 初めて米国の土を踏み、 2か月ほど働いて最初の給料が払われ、当時の金額で大枚500ドルを(為替レートが一ドル220円くらいでしたな)握りしめ真っ先に向かったのは前から目を付けていた町のギターショップだった。  あまり高くなくてもいいからMartinのDシリーズのボディーのギターを購入するつもりだった。  ところが店のマスターは「売らんでもないが、マーチンなんか買うな。」という  350ドルで勧められたのは日本製のギターの K.Yairi。 当時 S.Yairi と K.Yairi という二種類のYairiががあるというくらいは知っていたのだが、 日本にいたころはやはりMartinとかGibsonとかコンポジット材を使ったObationなんかが有名で、アメリカに行ったらアメリカ製を買うつもりだったのに、「悪いことは言わないから、値段も一回り安いし、この日本製を買いなさい。」と言われてしまったわけだ。

というわけで諭されてK.Yairi(Alvarez)を購入した。 時は過ぎ、結婚して子供ができ、その息子が大きくなってギターを弾きたいと言って地下室にしまってあったYairiをひっぱりだしてきた。10年くらいは触ってもいなかったわけで Tune UPに出すように言って、彼がGuitar Centerという最寄りのChain店に持って行った。 息子曰く、 Techが「お、Yairiだ」と言ってfHoleの中を望みこみ、 顔を見上げて、「兄ちゃんこのギターどこで手に入れた? これは掘り出しものだぜ」 と言ったそうな。

預かり証に書き込んてくれた時価評価額が3,900 USドル ずいぶんと中途半端な値段だが、これを聞いた親のほうが驚いた。 息子はホクホクものである。 ギターは初心者のはずだったが、さすがは鈴木チルドレン。 コードも難なく覚え、すでに自分より手練れの様子である。 さすがです。