ようへいの日々精進XP

よかろうもん

2021 年 06 月 12 日 (土)

アクティビティ (今までの走行 (歩行) 距離)

https://pixe.la/v1/users/inokappa/graphs/fitbit-activity

Fitibit Charge2 のアクティビティから走行 (歩行) 距離を Fitbit Web API で取得して Pixela で草生やしている。色が濃くなれば濃くなる程強度が高い (歩行、走行距離が長い) ということで。実装の詳細はこちら

ジョギング

いつもの補強とエアロバイク。

レアジョブ

今日も正蔵先生。正蔵先生がハーフマラソンに出場して、途中でセブンイレブンに寄って、肉まんとコーヒーを頂いた後、マクドナルドでハンバーガーを食べて、結局、ゴールしなかったという話で盛り上がった。楽しいレッスンだった。

夕飯

お好み焼きでした。

Python の文字列がイミュータブルという件

www.oreilly.co.jp

Python チュートリアルという書籍を読んでいて、「Python の文字列は改変出来ない」と書かれていて、どういうことなんだろうと思って手を動かしてみた。

root@1198174ebdea:/# python -V
Python 3.9.5
root@1198174ebdea:/# python
Python 3.9.5 (default, May 12 2021, 15:36:59)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> word = "Python"
>>> word
'Python'
>>> word[0]
'P'
>>> word[0] = 'p'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
>>>

おお、こういう事か。文字列のインデックス位置を取得することは出来ても、改変することは出来ない。

ちなみに、Ruby だと、文字列の一部を改変することは出来た。

root@41a312ebe3e2:/# ruby -v
ruby 2.7.3p183 (2021-04-05 revision 6847ee089d) [x86_64-linux]
root@41a312ebe3e2:/# irb
irb(main):001:0> word = "Ruby"
=> "Ruby"
irb(main):002:0> word
=> "Ruby"
irb(main):003:0> word[0]
=> "R"
irb(main):004:0> word[0] = "r"
=> "r"
irb(main):005:0> word
=> "ruby"
irb(main):006:0>

おお、面白い。

ちなみに、なぜ、イミュータブルなのか興味が出てきたので、もう少し、深堀りして調べてみたいと思う。