[python]配列の長さを取得する
配列のサイズをチェックする場合は、ビルトイン関数の len を使用する。
len(リスト)
val.lengh()とか val.size() のようにして取得することはできない。
len(リスト)
>>> data = ['a', 'b', 'c']
>>> len(data)
3
>>> data2 = [1, 2, 3, 4]
>>> len(data2)
4
val.lengh()とか val.size() のようにして取得することはできない。
>>> data.length()
Traceback (most recent call last):
File "", line 1, in
AttributeError: 'list' object has no attribute 'length'
>>> data.size()
Traceback (most recent call last):
File "", line 1, in
AttributeError: 'list' object has no attribute 'size'
[Python][Numpy] numpy.full :要素を指定した値で埋めた配列を生成
Numpyを使用して、要素を指定した値で埋めた配列を生成。
# Python 2.7.15
使用する関数は
numpy.full
Numpyがインストールされていなかったら、インストールをしておく。
macの場合、以下のコマンドでインストール。
■インストールコマンド
$ pip install numpy -I --user
■インストール確認
$ pip show numpy
Name: numpy
Version: 1.15.1
■numpy.full を使用して7を埋めた3x3の配列を生成してみた
>>> import numpy as np
>>> np.full((3,3), '7', dtype=np.int32)
array([[7, 7, 7],
[7, 7, 7],
[7, 7, 7]], dtype=int32)
>>>
ちなみに、文字を埋めてみようとしていくつかエラーを出したのでメモ。
ドキュメントを読めば、出ないエラーなんですがね。。
>>> np.full((3,3), 'a', dtype=np.string)
Traceback (most recent call last):
File "", line 1, in
AttributeError: 'module' object has no attribute 'string'
>>>
numpy に string なんてない、ということ。
dtype自体は string はあるので、以下のように。
>>> np.full((3,3), 'a', dtype=string)
Traceback (most recent call last):
File "", line 1, in
NameError: name 'string' is not defined
>>>
あら、string変数はないよと。。。
'string' に変更。
>>> np.full((3,3), 'a', dtype='string')
array([['a', 'a', 'a'],
['a', 'a', 'a'],
['a', 'a', 'a']], dtype='|S1')
>>>
無事、文字で埋まりました!!
ただ、'abc' 文字列で埋めることはできなかったんですよね。
なぜか、'abc' と指定すると 'a' で埋められました。
機会があれば、文字列のところも調べてみます。
ちなみに numpy.zeros、numpy.ones を使用すれば、
0埋め、1埋めはほんの少しですが簡易的に生成できます。
# Python 2.7.15
使用する関数は
numpy.full
Numpyがインストールされていなかったら、インストールをしておく。
macの場合、以下のコマンドでインストール。
■インストールコマンド
$ pip install numpy -I --user
■インストール確認
$ pip show numpy
Name: numpy
Version: 1.15.1
■numpy.full を使用して7を埋めた3x3の配列を生成してみた
>>> import numpy as np
>>> np.full((3,3), '7', dtype=np.int32)
array([[7, 7, 7],
[7, 7, 7],
[7, 7, 7]], dtype=int32)
>>>
ちなみに、文字を埋めてみようとしていくつかエラーを出したのでメモ。
ドキュメントを読めば、出ないエラーなんですがね。。
>>> np.full((3,3), 'a', dtype=np.string)
Traceback (most recent call last):
File "
AttributeError: 'module' object has no attribute 'string'
>>>
numpy に string なんてない、ということ。
dtype自体は string はあるので、以下のように。
>>> np.full((3,3), 'a', dtype=string)
Traceback (most recent call last):
File "
NameError: name 'string' is not defined
>>>
あら、string変数はないよと。。。
'string' に変更。
>>> np.full((3,3), 'a', dtype='string')
array([['a', 'a', 'a'],
['a', 'a', 'a'],
['a', 'a', 'a']], dtype='|S1')
>>>
無事、文字で埋まりました!!
ただ、'abc' 文字列で埋めることはできなかったんですよね。
なぜか、'abc' と指定すると 'a' で埋められました。
機会があれば、文字列のところも調べてみます。
ちなみに numpy.zeros、numpy.ones を使用すれば、
0埋め、1埋めはほんの少しですが簡易的に生成できます。