4

私は「Learn Python the Hard Way」に取り組んできましたが、これまでのところかなりうまくいっていますが、いくつか質問があります。

the_count = [1, 2, 3, 4, 5]
fruits = ['apples', 'oranges', 'pears', 'apricots']
change = [1, 'pennies', 2, 'dimes', 3, 'quarters']

# this first kind of for-loop goes through a list
for number in the_count:
    print "This is count %d" % number

# same as above
for fruit in fruits:
    print "A fruit of type: %s" % fruit

# also we can go through mixed lists too
# notice we have to use %r since we don't know what's in it
for i in change:
    print "I got %r" % i

これらの for ループでは、それぞれ「number」、「fruit」、「i」という単語が何であるかは重要ですか? Pythonのすべてを定義する必要があるように感じますが、それが理にかなっている場合、実際に数値を「定義」することはありません。この質問を正しく表現する方法が正確にはわかりません=/

4

4 に答える 4

6

いいえ、それらの名前に何を使用してもかまいません。有効な python 識別子である限り、これらの識別子に任意の名前を付けることができます。

fooそれらにbar、、、、vladiwostok何でも名前を付けます。もちろん、もう少し説明的な名前を選択することをお勧めしますfruitまたはnumber、使用されるコンテキストで優れた名前になります。

いずれにせよ、以下のすべては同等です。

for foo in fruits:
    print "A fruit of type: %s" % foo

for bar in fruits:
    print "A fruit of type: %s" % bar

for vladivostok in fruits:
    print "A fruit of type: %s" % vladivostok
于 2013-02-20T20:46:24.087 に答える
1

これらの変数を呼び出すために使用する実際の単語は重要ではありません。明らかに、それらを別の名前で呼んだ場合は、それらを参照するために新しい名前を使用する必要があります。

すなわち)あなたは持つことができなかった

for bla in the_count:
    print "This is the count &d" %number

数字を定義していないため

Python は、型付けが非常に弱いという点で、他の多くの言語とは異なります。変数の型が何であるかを明示的に言う必要はありません。

C/C++ では、整数変数はそのように定義されます。

int i;
i=24;

Python では、変数を定義するには、値を設定するだけで十分です。例えば、

i=24

i が整数になるように暗黙的に定義します。

同様に、ライン

for number in the_count:

number を the_count と同じ型の変数として暗黙的に定義します。

ただし、変数の型は変更できます。変数に異なる型の値を代入するだけで、何度でも切り替えることができます。

すなわち。

i=12        #i is an integer
i="bla"     #i has changed to a string
i=true      #i has changeed to a bool
于 2013-02-20T21:04:32.207 に答える
0

他の仲間が前に言ったように、Python は十分にスマートであり、参照しているオブジェクトの正確なタイプを内部で理解できるため、問題ではありません。変数の名前が奇妙で無意味でないかどうかを心配する必要があります:)

また、あなたはこれらの文を言いました:

これらの for ループでは、それぞれ「number」、「fruit」、「i」という単語が何であるかは重要ですか? Pythonのすべてを定義する必要があるように感じますが、それが理にかなっている場合、実際に数値を「定義」することはありません。この質問を正しく表現する方法が正確にはわかりません=/

Python の良い点は、型に基づいて何かをコーディングする必要がなく、オブジェクトでコーディングする必要があることです。つまり、次のサンプルのようなコードを使用しないでください。

def hello(arg):
   if type(arg) is "str":
       // do something
   elif type(arg) is "list":
       // do another thing

Python では多くの関数がポリモーフィズムを実装しており、パラメーターで渡されたさまざまな型を受け入れてうまく機能するため、可能な限り制限を緩和する必要があります。言語は厳密に型付けされているため、これによりプログラムの作成がはるかに簡単になりますが、特定の問題に対して適切にコード化された関数は、int、float、および文字列で機能する可能性があります。

于 2013-02-20T22:19:13.883 に答える