There are two ways for changing any data type into a String in Python : Using the str() function. Using the __str__() function.
In order to convert data types in pandas, there are three basic options: Use astype() to force an appropriate dtype. Create a custom function to convert the data. Use pandas functions such as to_numeric() or to_datetime()
The global method String() can convert booleans to strings. The Boolean method toString() does the same.
Python defines type conversion functions like int(), float(), str() to directly convert one data type into another. This type of conversion is also called typecasting because the user casts (change) the data type of the objects. This function converts any data type into integer.
myvariable = 4
mystring = str(myvariable) # '4'
also, alternatively try repr:
mystring = repr(myvariable) # '4'
This is called "conversion" in python, and is quite common.
str
is meant to produce a string representation of the object's data. If you're writing your own class and you want str
to work for you, add:
def __str__(self):
return "Some descriptive string"
print str(myObj)
will call myObj.__str__()
.
repr
is a similar method, which generally produces information on the class info. For most core library object, repr
produces the class name (and sometime some class information) between angle brackets. repr
will be used, for example, by just typing your object into your interactions pane, without using print
or anything else.
You can define the behavior of repr
for your own objects just like you can define the behavior of str
:
def __repr__(self):
return "Some descriptive string"
>>> myObj
in your interactions pane, or repr(myObj)
, will result in myObj.__repr__()
I see all answers recommend using str(object)
. It might fail if your object have more than ascii characters and you will see error like ordinal not in range(128)
. This was the case for me while I was converting list of string in language other than English
I resolved it by using unicode(object)
str(object)
will do the trick.
If you want to alter the way object is stringified, define __str__(self)
method for object's class. Such method has to return str or unicode object.
Use the str
built-in:
x = str(something)
Examples:
>>> str(1)
'1'
>>> str(1.0)
'1.0'
>>> str([])
'[]'
>>> str({})
'{}'
...
From the documentation:
Return a string containing a nicely printable representation of an object. For strings, this returns the string itself. The difference with repr(object) is that str(object) does not always attempt to return a string that is acceptable to eval(); its goal is to return a printable string. If no argument is given, returns the empty string, ''.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With