これ何て呼びますか Part2

a=3
a+1
print(a*2)
で、6が表示されるのは、4が保存されていないからでしょうか?
a=3
a=a+1
print(a*2) で8が表示されるのは、aに4が保存されているからでしょうか?
後、Pythonには、変数の型が、決まっていないというのは、どういう事でしょうか?教えて頂けると幸いです。

A 回答 (4件)

> ちなみに、「aと1を足す」と、「aに1を足す」は、どう意味が違うのでしょうか?教えて頂けると幸いです。



「aと1を足す」は「a+1」で、「aに1を足す」は「a=a+1」のことです。
(前回は短い書法の「a+=1」と書いたのでさらにわからなかったか)
言い換えると「aと1を足す」は足し算の結果を求めるだけ。「aに1を足す」は「aに『aと1を足した結果』を代入する」ということです。

ちなみに、「1+a」はどう思っていたのでしょうか?「a+1」との違いはあると思っていましたか?「a+b」や「b+a」はどうでしょうか?
    • good
    • 0

コンピュータ言語における=記号は、数学の=とは違うことを認識しておく必要があります。



数学では、a=a+1は、正解の出ない間違った数式になります。

コンピュータ言語での=記号は、=記号の右側の計算結果を、=記号の左側の変数に代入するという意味になります。
=と考えるよりも、←(左向き矢印)と考えた方が分かりやすいかもしれません。
先に=の右側の計算をして、その結果を左側の変数に保存するのです。

a+1だけの場合は、この代入の作業がありませんので、aの値は計算後も変化しません。
    • good
    • 0

> 例えば、言語が変わり、C言語だと、どんな型の値でも代入できるわけではないということでしょうか?教えて頂けると幸いです。



そうですね。Cだと、
int a;
a=23;
のように、a がint型(整数だけの型)であると宣言するので、
a="abc"; と書くとコンパイルエラーになります。
    • good
    • 0
この回答へのお礼

ちなみに、「aと1を足す」と、「aに1を足す」は、どう意味が違うのでしょうか?教えて頂けると幸いです。

お礼日時:2024/01/15 20:36

> 6が表示されるのは、4が保存されていないからでしょうか?


そうです。
a+1
は、「aと1を足す」であって、「aに1を足す」ではないです。
「aに1を足す」は、a += 1

> aに4が保存されているからでしょうか?
そうです。

> 変数の型が、決まっていないというのは、
同じ変数に、どんな型の値でも代入出来ると言うことです。
# 数値(整数)を代入
a=23
print(a)
#文字列を代入
a="abc123"
print(a)
    • good
    • 0
この回答へのお礼

例えば、言語が変わり、C言語だと、どんな型の値でも代入できるわけではないということでしょうか?教えて頂けると幸いです。

お礼日時:2024/01/15 06:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報