僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
bashでは隙間は何もなし。
だったはずだ。
今phpで確認したら、配列と連想配列の区別がないので、
ダブらない番号は適当に指定できる。
が、存在しない(整数の?)キーでアクセス
しようとしたらエラーになった(当たり前か)。
<?php $array1[3] = "bar"; echo $array1[0] , "\n"; ?> $ php test.php PHP Notice: Undefined offset: 0 in $PATH/test.php on line 3
python(3.2.3)では、離れた番号をキーにしようとした
だけでエラーになった。
この場合はディクショナリを使うことになるらしい。
>>> L1 = [] >>> L1[43] = 'baz' Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list assignment index out of range >>> L1[0] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range
>>> D1 = {} >>> D1[1] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 1 >>> D1[88] = "foo" >>> D1 {88: 'foo'} >>> D1[88] 'foo'
で、キーの有無は、(おそらく2.6以上で)
>>> if 88 in D1: print('OK') ... else : print('NG') ... OK >>> if 30 in D1: print('OK') ... else : print('NG') ... NG
サーチエンジンのために「スパース配列」と書いておこう。
入門書を読み返してきたが、キーと値が反対だった。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。