输入:range(100)
01 00 00 00 00 00 00 00 10 2C E9 71 FB 7F 00 00
10 69 71 D7 87 01 00 00 D0 55 74 D7 87 01 00 00
30 69 71 D7 87 01 00 00 D0 55 74 D7 87 01 00 00
关键:字符串 隔两个 输入一个空格,这个本想自己写一个实现,后来发现
from sys import getsizeof
from ctypes import string_at
s=input('''请输入一个赋值表达式,例如:123,'123',1.1,range(10)等\n这里将展现其在内存中的形态和部分数据类型的结构:\n输入:''')
data=eval(s)
hex_=string_at(id(data),getsizeof(data)).hex(' ').upper()
lens=len(hex_)
for i in range(0,lens,48):
print(hex_[i:i+48])
目前阶段的代码,之后阶段正在写
性能分析
b.hex() # 192 ns
b.hex(' ',-3) # 239 ns
b.hex(' ') # 242 ns
b.hex(' ',3) # 247 ns
如果使用字符串的方法的话
s=b.hex() # 不讨论这个的意义,仅讨论下边的方法
s1=''
for i in range(0,len(s),2):
s1=s1+s[i:i+2]
# 3.83 µs
l=[]
for i in range(0