首页 > 编程语言 >Python 字符串与十六进制字符串相互转换

Python 字符串与十六进制字符串相互转换

时间:2024-01-05 14:37:36浏览次数:47  
标签:十六进制 string Python hex str 字符串 ascii

Python字符串与十六进制字符串相互转换

在编程中,有时候我们需要将字符串与十六进制字符串之间进行转换。下面我们将展示如何使用Python实现这两个功能。

1. 将字符串转换为十六进制字符串

我们可以创建一个函数 ascii_to_hex_string 来实现这个功能。该函数将输入的字符串转换为对应的ASCII码列表,然后将每个ASCII码转换为两位的十六进制字符串,并用空格连接它们。

def ascii_to_hex_string(input_str):
    ascii_list = [ord(char) for char in input_str]
    hex_string = ' '.join(format(num, '02X') for num in ascii_list)
    return hex_string

# 测试
str_test = "posTar:200\n"
result_hex = ascii_to_hex_string(str_test)
print(result_hex)

运行上述代码,输出将是:"70 6F 73 54 61 72 3A 32 30 30 0A"。

2. 将十六进制字符串转换为字符串

同样地,我们可以创建一个函数 hex_string_to_ascii 来实现将十六进制字符串转换为字符串的功能。该函数先将输入的十六进制字符串分割成整数列表,然后将每个整数转换为相应的ASCII字符,最后将它们连接起来形成最终的字符串。

def hex_string_to_ascii(hex_string):
    hex_list = [int(hex_str, 16) for hex_str in hex_string.split()]
    result_str = ''.join(chr(num) for num in hex_list)
    return result_str

# 测试
str_test_hex = "70 6F 73 54 61 72 3A 32 30 30 0A"
result = hex_string_to_ascii(str_test_hex)
print(result)

运行上述代码,输出将是:"posTar:200\n"。

以上就是将字符串与十六进制字符串相互转换的简单方法。在实际应用中,这些功能可能在数据传输、编码处理等场景中发挥作用。

标签:十六进制,string,Python,hex,str,字符串,ascii
From: https://www.cnblogs.com/dapenson/p/17947191

相关文章

  • Python生成文件的MD5
    importhashlibdefcalc_md5(filename):md5_hash=hashlib.md5()withopen(filename,"rb")asf:#Readandupdatehashinchunksof4Kforbyte_blockiniter(lambda:f.read(4096),b""):md5_hash.up......
  • 在Python中,有几个库可以帮助我们自动寻找最适合的机器学习模型和参数。这里有两个主要
    在Python中,有几个库可以帮助我们自动寻找最适合的机器学习模型和参数。这里有两个主要的库:1.**lazypredict**¹:这个库可以快速地比较多种机器学习算法的性能,从而帮助我们选择最佳的算法。它可以在循环中迭代多个模型,这通常需要一些时间,但是使用lazypredict可以克服这个限制。下......
  • 每日一题:给定一个字符串s,请你找出其中不含有重复字符得最长子串的长度
    每日一题:给定一个字符串s,请你找出其中不含有重复字符得最长子串的长度functiongetLongSubstring(s){letmap=newMap();letmax=0;letleft=0;for(leti=0;i<s.length;i++){if(map.has(s[i])&&map.get(s[i])>=left){left=map.get(s[i])+1;......
  • MySQL 8.0的SQL查询JSON返回的数据类型为字符串而非数组
    在MySQL8.0中,SQL查询JSON返回的数据类型确实是字符串,而不是数组。这是因为MySQL将JSON数据存储为字符串,并提供了一些函数和操作符来处理JSON数据。但是,你可以使用内置的JSON函数来处理返回的JSON字符串。例如,你可以使用JSON_EXTRACT函数来提取JSON字符串......
  • python语言在web上的应用:如何节省服务器资源?
    背景介绍在web开发中的应用广泛在web开发中的应用广泛。随着互联网的发展,web应用越来越普遍,而Python作为一种简洁、高效的编程语言,被广泛应用于web开发领域。Python提供了丰富的库和框架,如Django、Flask等,使开发人员能够快速搭建功能强大的web应用。同时,Python还具有良好的可扩展性......
  • Python武器库开发-武器库篇之上传本地仓库到Git(三十八)
    武器库篇之上传本地仓库到Git(三十八)当我们在Git中创建远程仓库和进行了SSHkey免密登陆之后,我们点击Yourrespositories可以查看我们所创建的远程仓库,如图所示:如果我们需要将本地的仓库上传到Git,首先我们需要建立一个本地的仓库,我们创建一个和远程仓库同名的本地仓库,然后进入这......
  • Python武器库开发-武器库篇之Git创建远程仓库和建立SSH key 免密登陆(三十七)
    武器库篇之Git创建远程仓库和建立SSHkey免密登陆(三十七)Git是一种版本控制系统,用于跟踪文件的更改和协调多人开发项目。它可以记录文件的历史更改,协助多人协作开发,并提供分支管理功能。Git是一个分布式系统,意味着每个人在自己的本地计算机上都有一份完整的代码仓库,并且可以独立......
  • 用Python的Pygame包实现水果忍者小游戏
    先上一下运行结果长按鼠标左键出刀,切割水果几分,切割炸弹结束游戏,漏掉的水果也会几分,难度会随时间慢慢提高(水果的刷新频率变快) 初始化帧率200帧/秒,游戏窗口大小800×600#游戏设置pygame.init()FPS=200fpsClock=pygame.time.Clock()WIDTH,HEIGHT=80......
  • 无涯教程-Redis - Strings(字符串)
    Redis字符串命令用于管理Redis中的字符串值,以下是使用Redis字符串命令的语法。Strings-语法redis127.0.0.1:6379>COMMANDKEY_NAMEStrings-示例redis127.0.0.1:6379>SETlearnfkredisOKredis127.0.0.1:6379>GETlearnfk"redis"在上面的示例中,SET和GET......
  • 5种Python雪花飘落代码(建议收藏)
    第一种普通雪花代码:importturtleimportrandomdefdraw_snowflake(length,depth):ifdepth==0:turtle.forward(length)returnlength/=3.0draw_snowflake(length,depth-1)turtle.left(60)draw_snowflake(length,depth-1)......