Python数据类型转换实现方法
作者:小虾仁芜湖 时间:2022-06-04 22:58:39
基本类型转换
python3与python2通用函数:
int('123456',10) # 转换为指定进制的整数
hex(123456) # 整数转换为16进制串,转换后类型为字符串
bin(123) # 整数转换为2进制串
oct(123) # 整数转换为8进制串
python2专用函数:
'abcd'.encode('hex') # 字符串转换为16进制串,对应字符的ascii码
'61626364'.decode('hex') # ascii码转换为对应的字符串
特别注意:python3比python2多了个字节的数据类型
,python3字节专用函数:
# 字符串转字节
bytes('str',encoding='utf8')
'str'.encode(encoding='utf8')
# 字节转字符串
str(b'byte',encoding='utf8')
b'str'.decode(encoding='utf8')
python中的C语言数据类型
使用第三方库 numpy:
import numpy as np
a = np.int32(0xffffffff) # 会报错,超范围了
b = np.uint32(0xffffffff)
print a,b
使用 ctypes 库:
from ctypes import *
a = c_uint32(0xfffffff).value
b = c_int32(0xffffffff).value # 显示为 -1
print a,b
推荐使用ctypes,numpy在超过整数范围时不能强制类型转换
python中的struct库
在程序中,输入的多个字符可以被当作一个 WORD 或者 DWORD 甚至 QWORD 的类型进行运算,运算结果放到内存再逐字节取出来!针对这种情况,struct
库可以帮我们把几个字符打包成一个整数,或者将一个整数解包成几个字符,还能定义大小端模式!简言之,就是能把所使用的数据转换成在内存中存储的形式
常用到的一些格式字符
b char 1 B uchar 1 h short 2 H ushort 2 i int 4 I uint 4 l long 4 L ulong 4 q longlong 8 Q ulonglong 8 f float 4 d double 8 < 小端模式;> 大端模式;默认小端模式
使用方法:
from struct import *
a = 0x41424344
b = 0x6162
c = 0x66
print pack('<IHb',a,b,c)
print unpack('<IHb','DCBAbaf')[0]
python中的binascii库
在 python2 中有encode('hex')
函数可以快速将字符串转换为对应 ascii 码的16进制数,在 python3 中只有借助binascii
才能实现类似功能!
import binascii
binascii.hexlify(str) # 字符串转16进制串
binascii.unhexlify(hex_str) # 16进制串转字符串
python中的libnum神器
这个库的强大之处在于:可以直接将任意进制整数转换为字符串 常用的一些函数:
# Encoding=UTF-8
from libnum import *
s2n(str) # 字符串转整数
n2s(n) # 整数转字符串,任意进制数也能直接转,它会先把任意进制数转成16进制数
s2b(str) # 字符串转2进制位串
b2s(bin) # 2进制位串转字符串
来源:https://blog.csdn.net/qq_43966957/article/details/128216686
标签:Python,数据,类型转换
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
ASP实现防止网站被采集代码
2011-03-25 10:40:00
SQL Server与Oracle、DB2的优劣对比
2009-01-07 14:16:00
正则 global 属性介绍
2008-03-18 20:50:00
PHP自定义函数格式化json数据示例
2023-07-17 07:17:45
隐藏你的.php文件的实现方法
2023-10-20 22:58:01
验证码-挑战你的智慧
2008-09-10 13:08:00
![](https://img.aspxhome.com/file/UploadPic/20089/10/2008910131428605s.jpg)
ASP生成静态网页的方法
2008-02-18 19:20:00
MySQL的存储过程写法和Cursor的使用
2008-12-03 15:55:00
js 数值项目的格式化函数代码
2023-07-14 16:51:31
实例:ASP与ACCESS链接
2008-11-21 16:10:00
Ewebeditor及fckeditork单引号的问题
2010-04-05 21:12:00
网页上的广告条设计思考
2008-06-29 14:16:00
Python标准库之typing的用法(类型标注)
2021-09-27 01:25:24
![](https://img.aspxhome.com/file/2023/0/65100_0s.png)
js断点调试心得分享(必看篇)
2023-07-06 22:13:25
![](https://img.aspxhome.com/file/2023/6/55896_0s.png)
Python IDLE清空窗口的实例
2023-11-22 17:59:23
像聪明女孩穿衣服那样设计网页文字
2007-11-06 16:45:00
![](https://img.aspxhome.com/file/UploadPic/200711/6/2007116164842924s.jpg)
如何在ASP中使用SQL存储过程
2008-02-26 12:09:00
优化SQL Server的内存占用之执行缓存
2012-04-13 11:45:06
jRaiser与jQuery的冲突问题
2010-07-27 12:36:00
CSS的渲染效率:书写高效的CSS
2008-11-13 16:55:00