回答:
myvariable = 4
mystring = str(myvariable) # '4'
また、代わりにreprを試してください:
mystring = repr(myvariable) # '4'
これはPythonでは「変換」と呼ばれ、非常に一般的です。
str(u'ä')が機能しません。しかしrepr(u'ä')動作します。
strオブジェクトのデータの文字列表現を生成するためのものです。独自のクラスを作成していて、あなたのstrために働きたいのであれば、以下を追加してください:
def __str__(self):
return "Some descriptive string"
print str(myObj)を呼び出しますmyObj.__str__()。
repr同様のメソッドで、通常はクラス情報に関する情報を生成します。ほとんどのコアライブラリオブジェクトの場合、repr山かっこの間にクラス名(および場合によってはクラス情報)を生成します。reprたとえば、print何も使用せずに、インタラクションペインにオブジェクトを入力するだけで使用されます。
の動作を定義できるのとrepr同じように、独自のオブジェクトのの動作を定義できますstr。
def __repr__(self):
return "Some descriptive string"
>>> myObjインタラクションペインまたはでrepr(myObj)、myObj.__repr__()
object.__repr__-スタイルの山かっこ表現を返すことは事実ですが、最も一般的に使用されるものの多くはそうではありません。経験則でreprは、同じオブジェクトを生成するために評価できるPythonコードを返すのが理にかなっている場合は、、、および他のほとんどの組み込み関数と同じようstrにfrozensetそれを行いますが、そうでない場合は山かっこを使用します返されたものを、人間が読み取って評価できるソースとしての表現と間違えないようにするためのフォーム。
listいます。それ自体が含まれているように見えるだけでなく、評価可能なコードであり、評価が間違っているものを返しますが、コア開発者はこれをライセンスとして使用して、同じものを拡張していませんstdlibへの動作。)
str(object) トリックを行います。
オブジェクトの文字列化の方法を変更する場合は__str__(self)、オブジェクトのクラスのメソッドを定義します。このようなメソッドはstrまたはunicodeオブジェクトを返す必要があります。
str(any_var)またはany_var.__str__()
timeitモジュール)を、あなたが使用する必要がありstr(any_var)、それは人間のために、より読みやすいですしたときに例の恩恵を受けることができますので、any_var定義__repr__()が、doesnの」 tを定義します__str__()。
ただ使用してくださいstr-例えば:
>>> str([])
'[]'
str(var)?それがあなたが探しているものですか?