progateでpythonの勉強を始めて、約1カ月ですが
strの使い方と文字列の意味が分かりません、、
printの()内で使ったり、使わなかったりと区別が難しいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/01 02:18
回答3件
0
str(x)は引数xを文字列にしたものを返します。
strのことを変換関数とかキャストと呼ぶ人がいますが、正確に言うとpythonでは変換関数でもキャストでもありません。strは文字列のクラスです。
文字列のクラスだというのは以下のようにしてわかります。
python
1>>> print(str) 2<class 'str'> 3>>> print(type('abc')) 4<class 'str'>
同じようなクラスとして、int、float、list等があります。
intは整数のクラスで、数字の文字列を受け取れば整数を返します。
count = int(input_count) というのもそれです。
+という演算は、整数の足し算や浮動小数の足し算や文字列の連結に使います。
"1"という文字列と2という整数を足すことは出来ません。
こういう場合、クラスを使って変換してあげれば足すことができます。
python
1>>> str_1 + int_2 2Traceback (most recent call last): 3 File "<stdin>", line 1, in <module> 4TypeError: can only concatenate str (not "int") to str 5>>> print(str_1 + str(int_2)) 612 7>>> print(int(str_1)+ int_2) 83
投稿2021/04/01 03:54
総合スコア24670
0
ベストアンサー
pythonでは、何でもかんでもサクッとprintで表示できてしまい、いまいちstrの意味が分からないとは思いますが、こんな事すると分かるかと思います。
python
1import numpy as np 2n = np.array([1,2,3]) 3print(n) #これはオッケー 4print (‘n[2]=‘+n[2]) # これはダメ 5print (‘n[2]=‘+str(n[2])) # これはオッケー 6
この理由は文字列同士で無いと結合出来ないからです。
投稿2021/04/01 02:21
総合スコア241
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/04/01 02:35
2021/04/01 03:04
2021/04/01 03:14
2021/04/01 06:09
0
このウェッブページ、参考になりませんかね。
投稿2021/04/01 02:16
総合スコア404
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。