苏童 发表于 2015-4-28 05:13:49

Python类型转换

  一、类型转换函数
函数                                           描述
int(x [,base ])         将x转 换为一个整数(其中base表示基数)
long(x [,base ])      将 x转换为一个长整数
float(x )               将 x转换到一个浮点数
complex(real [,imag ])创建一个复数
str(x )               将 对象 x 转换为字符串
repr(x )                将对象 x 转换为表达式字符串
eval(str )            用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s )               将 序列 s 转换为一个元组
list(s )                将序列 s 转换为一个列 表
chr(x )               将一个整数转换为一个字符
unichr(x )            将 一个整数转换为Unicode字符
ord(x )               将一个字符转换为 它的整数值
hex(x )               将一个整数转换为一个十六进制字符串
oct(x )               将 一个整数转换为一个八进制字符串
补充:有关于str与repr的区别:
    str()函数得到的字符串可读性好,而repr()函数得到的字符串通常可以用来重新获得该对象,通常情况下obj == eval(repr(obj)) 这个等式是成立的。这两个函数接受一个对象作为其参数,返回适当的字符串。尽管str(),repr()和``运算在特性和功能方面都非常相似,事实上repr()和``做的是完全一样的事情,它们返回的是一个对象的“官方”字符串表示,也就是说绝大多数情况下可以通过求值运算(使用内建函数eval())重新得到该对象,但str()则有所不同。str()致力于生成一个对象 的可读性好的字符串表示,它的返回结果通常无法用于eval()求值,但很适合用于print语句输出。需要再次提醒的是,并不是所有repr()返回的字符串都能够用 eval()内建函数得到原来的对象。[通过使用eval可以将repr返回的字符串还原回去]
    结论:也就是说 repr() 输出对 Python比较友好,而str()的输出对用户比较友好。

二、数值操作
操作符                              含义
x > y                  右移
x & y                   按位与
x | y                   按位或
x ^ y                   按 位异或 (exclusive or)
~x                      按 位翻转
x + y                   加
x - y                   减
x * y                   乘
x / y                   常 规除
x // y                  地板除
x ** y                  乘 方 (xy )
x % y                   取模 (x mod y )
-x                      改 变操作数的符号位
+x                      什么也不做
~x                      ~x=-(x+1)
abs(x )               绝 对值
divmod(x ,y )         返 回 (int(x / y ), x % y )
pow(x ,y [,modulo ])    返 回 (x ** y ) x % modulo
round(x ,)         四舍 五入,n为小数点位数
x < y                   小于
x > y                   大 于
x == y                  等于
x != y                  不 等于(与相同)
x >= y                  大于等于
x
页: [1]
查看完整版本: Python类型转换