Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。
Q&A
3回答
962閲覧
総合スコア404
0グッド
0クリップ
投稿2020/03/15 08:09
0
pythonにて、たとえば'a'の場合、これはデータであると同時に、関数を備えている思うんです。 そこまでは良いのですが、その場合、'a'というのは、いったいクラスなのでしょうか、オブジェクトなのでしょうか。
python1# 以下の場合、'a'はクラスのようでし、 2obj='a'.upper() 3print(obj) 4A 5 6# 以下の場合、'a'はオブジェクトのようです。 7print('a'.upper()) 8A
python
1# 以下の場合、'a'はクラスのようでし、 2obj='a'.upper() 3print(obj) 4A 5 6# 以下の場合、'a'はオブジェクトのようです。 7print('a'.upper()) 8A
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
2020/03/15 08:17
2020/03/15 12:03
回答3件
TaroToyotomiさんの回答もte2ji さんの回答も的を得てると思うのですが、質問者さんには納得できないのでしょうか? 質問者さんにならって、言語仕様ではなく外形で勝負しましょう。クラスにしかできないことといえば関数として呼び出してインスタンスを生成することですよね。
>>> 'a'() Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'str' object is not callable >>> str() ''
strはインスタンス生成できるからクラスかもしれない、'a'はインスタンス生成できないからクラスではない。 これでどうでしょう?
投稿2020/03/15 08:38
総合スコア3401
いったいクラスなのでしょうか、オブジェクトなのでしょうか。
上記に真面目に答えると、質問が発散しそうなので、関連しそうなドキュメントのリンクだけ貼っておきますね。
テキストシーケンス型 --- str
Python のテキストデータは str オブジェクト、すなわち 文字列 として扱われます。文字列は Unicode コードポイントのイミュータブルな シーケンス です。文字列リテラルには様々な記述方法があります
参考まで。
投稿2020/03/15 08:17
退会済みユーザー
総合スコア0
'a'はstr型のオブジェクトです。 strはstrというクラスです。
投稿2020/03/15 08:14
総合スコア1463
回答へのコメント
2020/03/15 10:02
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
まだベストアンサーが選ばれていません
アカウントをお持ちの方はログイン
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
クラスか、オブジェクトか