: | : | :期货量化学习 | :期货量化 |
返回列表 发帖

Python基础知识 -【Python数据类型转换】

Python基础知识 -【Python数据类型转换】

Python数据类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可,在下一章节 Python3 数据类型转换 会具体介绍。

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。


论坛官方微信、群(期货热点、量化探讨、开户与绑定实盘)
 
期货论坛 - 版权/免责声明   1.本站发布源码(包括函数、指标、策略等)均属开放源码,用意在于让使用者学习程序化语法撰写,使用者可以任意修改语法內容并调整参数。仅限用于个人学习使用,请勿转载、滥用,严禁私自连接实盘账户交易
  2.本站发布资讯(包括文章、视频、历史记录、教材、评论、资讯、交易方案等)均系转载自网络主流媒体,内容仅为作者当日个人观点,本网转载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网不对该类信息或数据做任何保证。不对您构成任何投资建议,不能依靠信息而取代自身独立判断,不对因使用本篇文章所诉信息或观点等导致的损失承担任何责任。
  3.本站发布资源(包括书籍、杂志、文档、软件等)均从互联网搜索而来,仅供个人免费交流学习,不可用作商业用途,本站不对显示的内容承担任何责任。请在下载后24小时内删除。如果喜欢,请购买正版,谢谢合作!
  4.龙听期货论坛原创文章属本网版权作品,转载须注明来源“龙听期货论坛”,违者本网将保留追究其相关法律责任的权力。本论坛除发布原创文章外,亦致力于优秀财经文章的交流分享,部分文章推送时若未能及时与原作者取得联系并涉及版权问题时,请及时联系删除。联系方式:http://www.qhlt.cn/thread-262-1-1.html
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

Python int() 函数

描述

int() 函数用于将一个字符串或数字转换为整型。
语法

以下是 int() 方法的语法:

  1. class int(x, base=10)
复制代码


参数

    x -- 字符串或数字。
    base -- 进制数,默认十进制。

返回值

返回整型数据。

实例

以下展示了使用 int() 方法的实例:
  1. >>>int()               # 不传入参数时,得到结果0
  2. 0
  3. >>> int(3)
  4. 3
  5. >>> int(3.6)
  6. 3
  7. >>> int('12',16)        # 如果是带参数base的话,12要以字符串的形式进行输入,12 为 16进制
  8. 18
  9. >>> int('0xa',16)  
  10. 10  
  11. >>> int('10',8)  
  12. 8
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python str() 函数

描述

str() 函数将对象转化为适于人阅读的形式。

语法

以下是 str() 方法的语法:
  1. class str(object='')
复制代码
参数

    object -- 对象。

返回值

返回一个对象的string格式。
实例

以下展示了使用 str() 方法的实例:
  1. >>>s = 'RUNOOB'
  2. >>> str(s)
  3. 'RUNOOB'
  4. >>> dict = {'runoob': 'runoob.com', 'google': 'google.com'};
  5. >>> str(dict)
  6. "{'google': 'google.com', 'runoob': 'runoob.com'}"
  7. >>>
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python repr() 函数

描述

repr() 函数将对象转化为供解释器读取的形式。
语法

以下是 repr() 方法的语法:
  1. repr(object)
复制代码
参数

    object -- 对象。

返回值

返回一个对象的 string 格式。
实例

以下展示了使用 repr() 方法的实例:
  1. >>> s = 'RUNOOB'
  2. >>> repr(s)
  3. "'RUNOOB'"
  4. >>> dict = {'runoob': 'runoob.com', 'google': 'google.com'};
  5. >>> repr(dict)
  6. "{'google': 'google.com', 'runoob': 'runoob.com'}"
  7. >>>
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python3 tuple 函数

描述

tuple 函数将可迭代系列(如列表)转换为元组。

语法

以下是 tuple 的语法:
  1. tuple( iterable )
复制代码
参数

    iterable -- 要转换为元组的可迭代序列。

返回值

返回元组。
实例

以下展示了使用 tuple 的实例:
  1. >>>list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
  2. >>> tuple1=tuple(list1)
  3. >>> tuple1
  4. ('Google', 'Taobao', 'Runoob', 'Baidu')
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python3 List list()方法

描述

list() 方法用于将元组或字符串转换为列表。

注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。
语法

list()方法语法:
  1. list( seq )
复制代码
参数

    seq -- 要转换为列表的元组或字符串。

返回值

返回列表。
实例

以下实例展示了 list()函数的使用方法:
  1. #!/usr/bin/python3

  2. aTuple = (123, 'Google', 'Runoob', 'Taobao')
  3. list1 = list(aTuple)
  4. print ("列表元素 : ", list1)

  5. str="Hello World"
  6. list2=list(str)
  7. print ("列表元素 : ", list2)
复制代码
以上实例输出结果如下:
  1. 列表元素 :  [123, 'Google', 'Runoob', 'Taobao']
  2. 列表元素 :  ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python set() 函数

描述

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
语法

set 语法:
  1. class set([iterable])
复制代码
参数说明:

    iterable -- 可迭代对象对象;

返回值

返回新的集合对象。
实例

以下实例展示了 set 的使用方法:
  1. >>>x = set('runoob')
  2. >>> y = set('google')
  3. >>> x, y
  4. (set(['b', 'r', 'u', 'o', 'n']), set(['e', 'o', 'g', 'l']))   # 重复的被删除
  5. >>> x & y         # 交集
  6. set(['o'])
  7. >>> x | y         # 并集
  8. set(['b', 'e', 'g', 'l', 'o', 'n', 'r', 'u'])
  9. >>> x - y         # 差集
  10. set(['r', 'b', 'u', 'n'])
  11. >>>
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python dict() 函数

描述

dict() 函数用于创建一个字典。
语法

dict 语法:
  1. class dict(**kwarg)
  2. class dict(mapping, **kwarg)
  3. class dict(iterable, **kwarg)
复制代码
参数说明:

    **kwargs -- 关键字。
    mapping -- 元素的容器,映射类型(Mapping Types)是一种关联式的容器类型,它存储了对象与对象之间的映射关系。
    iterable -- 可迭代对象。

返回值

返回一个字典。
实例

以下实例展示了 dict 的使用方法:
  1. >>>dict()                        # 创建空字典
  2. {}
  3. >>> dict(a='a', b='b', t='t')     # 传入关键字
  4. {'a': 'a', 'b': 'b', 't': 't'}
  5. >>> dict(zip(['one', 'two', 'three'], [1, 2, 3]))   # 映射函数方式来构造字典
  6. {'three': 3, 'two': 2, 'one': 1}
  7. >>> dict([('one', 1), ('two', 2), ('three', 3)])    # 可迭代对象方式来构造字典
  8. {'three': 3, 'two': 2, 'one': 1}
  9. >>>
复制代码
只使用关键字参数创建字典

实例
  1. numbers = dict(x=5, y=0)
  2. print('numbers =', numbers)
  3. print(type(numbers))

  4. empty = dict()
  5. print('empty =', empty)
  6. print(type(empty))
复制代码
以上实例输出结果为:
  1. numbers = {'y': 0, 'x': 5}
  2. <class 'dict'>
  3. empty = {}
  4. <class 'dict'>
复制代码
使用可迭代对象创建字典

实例
  1. # 没有设置关键字参数
  2. numbers1 = dict([('x', 5), ('y', -5)])
  3. print('numbers1 =',numbers1)

  4. # 设置关键字参数
  5. numbers2 = dict([('x', 5), ('y', -5)], z=8)
  6. print('numbers2 =',numbers2)

  7. # zip() 创建可迭代对象
  8. numbers3 = dict(dict(zip(['x', 'y', 'z'], [1, 2, 3])))
  9. print('numbers3 =',numbers3)
复制代码
以上实例输出结果为:
  1. numbers1 = {'y': -5, 'x': 5}
  2. numbers2 = {'z': 8, 'y': -5, 'x': 5}
  3. numbers3 = {'z': 3, 'y': 2, 'x': 1}
复制代码
使用映射来创建字典

映射类型(Mapping Types)是一种关联式的容器类型,它存储了对象与对象之间的映射关系。

实例
  1. numbers1 = dict({'x': 4, 'y': 5})
  2. print('numbers1 =',numbers1)

  3. # 以下代码不需要使用 dict()
  4. numbers2 = {'x': 4, 'y': 5}
  5. print('numbers2 =',numbers2)

  6. # 关键字参数会被传递
  7. numbers3 = dict({'x': 4, 'y': 5}, z=8)
  8. print('numbers3 =',numbers3)
复制代码
以上实例输出结果为:
  1. numbers1 = {'x': 4, 'y': 5}
  2. numbers2 = {'x': 4, 'y': 5}
  3. numbers3 = {'x': 4, 'z': 8, 'y': 5}
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python chr() 函数

描述

chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
语法

以下是 chr() 方法的语法:
  1. chr(i)
复制代码
参数

    i -- 可以是10进制也可以是16进制的形式的数字。

返回值

返回值是当前整数对应的 ASCII 字符。
实例

以下展示了使用 chr() 方法的实例:
  1. >>>print chr(0x30), chr(0x31), chr(0x61)   # 十六进制
  2. 0 1 a
  3. >>> print chr(48), chr(49), chr(97)         # 十进制
  4. 0 1 a
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

Python3 数据类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,一般情况下你只需要将数据类型作为函数名即可。

Python 数据类型转换可以分为两种:

    隐式类型转换 - 自动完成
    显式类型转换 - 需要使用类型函数来转换

隐式类型转换

在隐式类型转换中,Python 会自动将一种数据类型转换为另一种数据类型,不需要我们去干预。

以下实例中,我们对两种不同类型的数据进行运算,较低数据类型(整数)就会转换为较高数据类型(浮点数)以避免数据丢失。

实例
  1. num_int = 123
  2. num_flo = 1.23

  3. num_new = num_int + num_flo

  4. print("num_int 数据类型为:",type(num_int))
  5. print("num_flo 数据类型为:",type(num_flo))

  6. print("num_new 值为:",num_new)
  7. print("num_new 数据类型为:",type(num_new))
复制代码
以上实例输出结果为:
  1. num_int 数据类型为: <class 'int'>
  2. num_flo 数据类型为: <class 'float'>
  3. num_new: 值为: 124.23
  4. num_new 数据类型为: <class 'float'>
复制代码
代码解析:

    实例中我们对两个不同数据类型的变量 num_int 和 num_flo 进行相加运算,并存储在变量 num_new 中。
    然后查看三个变量的数据类型。
    在输出结果中,我们看到 num_int 是 整型(integer) , num_flo 是 浮点型(float)。
    同样,新的变量 num_new 是 浮点型(float),这是因为 Python 会将较小的数据类型转换为较大的数据类型,以避免数据丢失。

我们再看一个实例,整型数据与字符串类型的数据进行相加:

实例
  1. num_int = 123
  2. num_str = "456"

  3. print("num_int 数据类型为:",type(num_int))
  4. print("num_str 数据类型为:",type(num_str))

  5. print(num_int+num_str)
复制代码
以上实例输出结果为:
  1. num_int 数据类型为: <class 'int'>
  2. num_str 数据类型为: <class 'str'>
  3. Traceback (most recent call last):
  4.   File "/runoob-test/test.py", line 7, in <module>
  5.     print(num_int+num_str)
  6. TypeError: unsupported operand type(s) for +: 'int' and 'str'
复制代码
从输出中可以看出,整型和字符串类型运算结果会报错,输出 TypeError。 Python 在这种情况下无法使用隐式转换。

但是,Python 为这些类型的情况提供了一种解决方案,称为显式转换。
显式类型转换

在显式类型转换中,用户将对象的数据类型转换为所需的数据类型。 我们使用 int()、float()、str() 等预定义函数来执行显式类型转换。

int() 强制转换为整型:

实例
  1. x = int(1)   # x 输出结果为 1
  2. y = int(2.8) # y 输出结果为 2
  3. z = int("3") # z 输出结果为 3
复制代码
float() 强制转换为浮点型:

实例
  1. x = float(1)     # x 输出结果为 1.0
  2. y = float(2.8)   # y 输出结果为 2.8
  3. z = float("3")   # z 输出结果为 3.0
  4. w = float("4.2") # w 输出结果为 4.2
复制代码
str() 强制转换为字符串类型:

实例
  1. x = str("s1") # x 输出结果为 's1'
  2. y = str(2)    # y 输出结果为 '2'
  3. z = str(3.0)  # z 输出结果为 '3.0'
复制代码
整型和字符串类型进行运算,就可以用强制类型转换来完成:

实例
  1. num_int = 123
  2. num_str = "456"

  3. print("num_int 数据类型为:",type(num_int))
  4. print("类型转换前,num_str 数据类型为:",type(num_str))

  5. num_str = int(num_str)    # 强制转换为整型
  6. print("类型转换后,num_str 数据类型为:",type(num_str))

  7. num_sum = num_int + num_str

  8. print("num_int 与 num_str 相加结果为:",num_sum)
  9. print("sum 数据类型为:",type(num_sum))
复制代码
以上实例输出结果为:
  1. num_int 数据类型为: <class 'int'>
  2. 类型转换前,num_str 数据类型为: <class 'str'>
  3. 类型转换后,num_str 数据类型为: <class 'int'>
  4. num_int 与 num_str 相加结果为: 579
  5. sum 数据类型为: <class 'int'>
复制代码
如何访问权限为100/255贴子:/thread-37840-1-1.html;注册后仍无法回复:/thread-23-1-1.html;微信/QQ群:/thread-262-1-1.html;网盘链接失效解决办法:/thread-93307-1-1.html

TOP

返回列表