怎么把16进制的ASC码转换成字符串的显示,用python实现

作者&投稿:山真 (若有异议请与网页底部的电邮联系)
python是一种编程语言吗?~

当然!
Python是一种高级的编程语言,是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫作ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。
汇编语言assembly language,是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。
高级语言High-level programming language,是一种独立于机器,面向过程或对象的语言。高级语言是参照数学语言而设计的近似于日常会话的语言。
计算机语言具有高级语言和低级语言之分。而高级语言又主要是相对于汇编语言而言的,它是较接近自然语言和数学公式的编程,基本脱离了机器的硬件系统,用人们更易理解的方式编写程序。编写的程序称之为源程序。

也许最初设计 Python 这种语言的人并没有想到今天Python 会在工业和科研上获得如此广泛的使用。著名的自由软件作者Eric Raymond 在他的文章《如何成为一名黑客》中,将Python 列为黑客应当学习的四种编程语言之一,并建议人们从Python 开始学习编程。这的确是一个中肯的建议,对于那些从来没有学习过编程或者并非计算机专业的编程学习者而言,Python 是最好的选择之一。Python 第一次学习Python,我只用了不到二十分钟的时间,站在书店里把一本教初学编程的人学习Python 的书翻了一遍。也是从那时起,我开始被这种神奇的语言吸引。 Python 可以用来开发symbian 上的东西。 易用与速度的完美结合Python 是一种用起来很方便的语言,很多初学Java 的人都会被 Java 的CLASSPATH 搞得晕头转向,花上半天的时间才搞明白原来是CLASSPATH 搞错了自己的 Hello World 才没法运行。用Python 就不会有这种问题,只要装上就能直接用。 Python 是一种脚本语言,写好了就可以直接运行,省去了编译链接的麻烦,对于需要多动手实践的初学者而言,也就是少了出错的机会。而且Python 还有一种交互的方式,如果是一段简单的小程序,连编辑器都可以省了,直接敲进去就能运行。Python 是一种清晰的语言,用缩进来表示程序的嵌套关系可谓是一种创举,把过去软性的编程风格升级为硬性的语法规定。再不需要在不同的风格间选择、再不需要为不同的风格争执。与 Perl 不同,Python 中没有各种隐晦的缩写,不需要去强记各种奇怪的符号的含义。Python 写的程序很容易懂,这是不少人的共识。Python 是一种面向对象的语言,但它的面向对象却不象C++那样强调概念,而是更注重实用。不是为了体现对概念的完整支持而把语言搞得很复杂,而是用最简单的方法让编程者能够享受到面向对象带来的好处,这正是 Python 能像 Java、C#那样吸引众多支持者的原因之一。 Python 是一种功能丰富的语言,它拥有一个强大的基本类库和数量众多的第三方扩展,使得Python 程序员无需去羡慕Java 的JDK。Python 为程序员提供了丰富的基本功能使得人们写程序时用不着一切最底层做起。说到这里,人们通常会用一种担心:脚本语言通常很慢。脚本语言从运行的速度讲的确会慢一些,但 Python 的速度却比人们想象得快很多。虽然 Python 是一种脚本语言,但实际上也可以对它进行编译,就象编译Java 程序一样将Python 程序编译为一种特殊的ByteCode,在程序运行时,执行的是ByteCode,省去了对程序文本的分析解释,速度自然提升很多。在用Java 编程是,人们崇尚一种Pure Java 的方式,除了虚拟机一切东西都用Java 编写,无论是基本的数据结构还是图形界面,而Pure Java 的SWING,却成为无数Java 应用开发者的噩梦。Python 崇尚的是实用,它的整体环境是用C 来编写的,很多基本的功能和扩展的模块都是用 C/C++来编写的,当执行这一部分代码时,它的速度就是C 的速度。用Python 编写的普通桌面程序,其启动运行速度与用C 写的程序差别不大。除了这些,通过一些第三方软件包,用Python 编写的源代码还可以以类似JIT 的方式运行,而这可以大大提高Python 代码的运行速度,针对不同类型的代码,会有2 倍至100 倍不等的速度提升。 Python 是我见到过的语言中,在易用性和速度上结合的最完美的一个,通过丧失一点点经常可以忽略不计的运行速度从而获得更高的编程效率,这就是我选择Python 的原因。把精力放在要解决的问题上选择一种合适的语言,才能让你把有限的精力放到最需要解决的问题上。不同的语言有不同的作用,C 和汇编适合编写系统软件,如果用它们来编写企业应用,恐怕没几个人能得心应手。我以前就碰到一个用汇编写数据库程序的哥,虽然最基本的功能完成了,但要增加个报表预览什么的,他就没法应付了。聪明的程序员是用合适的工具去完成任务,想找一把万能钥匙是不太可能的。Python 的自动的垃圾回收机制是高级的编程语言的一种基本特性,用拥有这一功能的语言编程,程序员们通常不用去关心内存泄漏的问题,而当我们用 C/C++写程序时,这却是最重要的需要认真考虑却又很容易出错的问题之一。数据结构是程序构成的重要部分,链表、树、图这些在用C 编程时需要仔细表达的问题在Python 中简单了很多。在Python 中,最基本的数据结构就是数组、序列和哈希表,用它们想要表达各种常见的数据结构是非常容易的。没了定义指针、分配内存的任务,编程变得有趣了。CORBA 是一种高级的软件体系结构,它是语言无关平台无关的。C++、Java 等语言都有CORBA 绑定,但与它们相比,Python 的 CORBA 绑定却容易很多,因为在程序员看来,一个 CORBA 的类和 Python 的类用起来以及实现起来并没有什么差别。没了复杂体系结构的困扰,用 Python 编写CORBA 程序也变得容易了。好钢要用在刀刃上,要想用有限的时间完成尽量多的任务,就要把各种无关的问题抛弃,而Python 恰恰提供了这种方法。跨平台又易扩展随着Linux 的不断成熟,越来越多的人转到Linux 平台上工作,软件的开发者自然就希望自己编写的软件可以在所有平台下运行。Java 一次编写处处运行的口号使它成为跨平台的开发工具的典范,但其运行速度却不被人们看好。实际上,几乎所有的著名脚本语言都是跨平台的,Python 也不例外。Python 不仅支持各种Linux/Unix 系统,还支持Windows,甚至在Palm 上都可以运行 Python 的程序。一个程序想要跨平台工作,不仅仅需要语言本身能够做到在平台之间兼容,在图形化界面的时代,还需要有能跨平台工作的 Widget。Python 不仅支持老一些的 TK,还支持新的GTK+、QT 以及wxWidget,而这些Widgets 都可以在多个平台上工作。通过它们,程序员就可以编写出漂亮的跨平台GUI 程序。Python 通常是运行在native 代码与脚本代码之间,程序员可以用 C/C++为 Python 编写各种各样的模块,这不仅可以让程序员以 Python 的方式使用系统的各种服务及用C/C++编写的优秀函数库和类库,还可以大幅度提高Python 程序的速度。用C/C++编写Python 的模块并不复杂,而且为了简化这一工作,人们还制作了不少工具用来协助这一工作。正是因为如此,现在各种常用的函数库和类库都有Python 语言的绑定,用 Python 可以做到的事情越来越多了。万能钥匙?Python 功能强大,但它却不是万能的。如果你要编写操作系统或驱动程序,很显然,Python 是做不到的。要写软件,没有哪个工具是万能的,现在之所以有那么多的编程语言,就是因为不同的语言适合做不同的事情。因此,选择适合自己的语言工具是最重要的。

#将16进制字符转成二进制字符
def str2byte(s):
base='0123456789ABCDEF'
i=0
s = s.upper()
s1=''
while i < len(s):
c1=s[i]
c2=s[i+1]
i+=2
b1=base.find(c1)
b2=base.find(c2)
if b1 == -1 or b2 == -1:
return None
s1+=chr((b1 << 4)+b2)
return s1

s = 'C7 EB CE F0 BE C6 BA F3 BC DD B3 B5'.replace(' ','') #去掉空格
s1 = str2byte(s)
print s1.decode('gbk') #以gbk编码解码输出

#结果
>>> s1
'\xc7\xeb\xce\xf0\xbe\xc6\xba\xf3\xbc\xdd\xb3\xb5'
>>> print s1.decode('gbk')
请勿酒后驾车


求vb中将字符串转换为16进制的ascii码代码
如y=Hex$(10)就是求10的十六进制数 那么 y=A 字母,数字,和汉字的asc码都只要用asc()这个函数就可以求出来了 你把问题写写清楚的话,我可以写下代码 Option Explicit Dim aa$, bb$, hexstr$, I&, S Private Sub Command1_Click()Dim lendd As Integer, n As Integer lendd = Len...

java中 0xas 是什么 运算~(0xas&0xaa)的输出结果为什么是10_百度知 ...
你确定是as吗?在编程中0x表示的是16进制的数。但在16进制中不可能有s啊。是不是你写错了 & 是但与运算符。就是先把数字转为二进制。能后在进行为的与运算(1&1 =1 1&0 =0 0&0=0)

在VB中如何提取一个十六进制数的某一位啊
用按位与是最容易的。譬如你有一个十六进制数x,你想提取第五位,那么首先定义一个按位与的mask:dim m as Integer = 15 << (5*4)15写成二进制是1111,左移5*4位,也就是移到需要的第5位16进制数那里。然后,按位与:dim y as Integer y = x And m 最后把y右移5*4位:y = y ...

EXCEL 如何把单元格里16进制的字符每4位转换成10进制,然后再按以下的格...
答:编写了一个自定义函数来完成。见下图:步骤:按ALT+F11,打开VB编辑器,“插入”--“模块”,然后贴入下方代码:Function HTOD(CELL As Range) Dim i As Long Dim RltArr() As Variant For i = 1 To Len(CELL.Value) Step 4 ReDim Preserve RltArr(Int(i \/ 4)) Rl...

请问在VB里怎样把一个字节(16进制)取出其高4位和低4位?
例如字节变量是a 高4位可以写成 a\\16 低4位可以写成 a mod 16 使用 and 运算也可以。高4位 a and 240 或者 a and &hf0 (注意,低4位的零保留着没有去掉)低4位 a and 15 或者 a and &hf

求VB 16进制转字符方法
DIM strData as string strData = data 'Data: 55 00 28 64...For i = 1 To Len(strData) Step 3 '处理为ASCII字符 sj = Val("&H" & Mid(strData, i, 2))If sj < 32 Or sj > 128 Then '当接收字节中有Chr(0)时,其后字符被切割 strDat = strDat & "."Else...

如何将16进制的字符串如"FF",转换成2进制字符串"11111111",需要转换...
帮你写了个子程序,输入一个1或2字节的字符串,输出对应的十进制值。如a=hex2dec("FF")返回255给a。然后mscomm1.output=chr(a)就把255发送出去了。Private Function hex2dec(ByVal hex As String) As Byte Dim a, d As Byte hex = UCase(hex)If Len(hex) = 1 Then hex = "0" & hex...

VB中的哪个函数是用来把十六进制转换为十进制的啊?
此时使用Hex和Val函数处理进制转换不存在异议.Private Sub Command2_Click()Dim a As Integer a = -12325 Text1 = Hex(a) 'Text1中显示CFDB Text2 = Val("&H" & Text1) 'Text2中显示-12325 End Sub 当数值大于32767小于65536,必须注意转换的正确性,由16进制转换为10进制时,必需在16...

在VB中怎么实现发送16进制的数据,然后接受到后显示为10进制的
实现16进制接收实质就是按2进制接收 设置MSComm控件的属性InputMode = comInputModeBinary '二进制接收 接收后由HEX函数转为16进制字符串形式显示 Option Explicit Dim strData As String Dim bytInput() As Byte Private Sub MsComm1_OnComm()Dim intInputLen As Integer Select Case Me.MSComm2.Comm...

vb 中如何将十六进制变量转换成十进制变量
VB可在16进制数字符串前加&H前缀拼接就可将其表示是16进制的数,在计算机内部就是一个十进制数。适当范围内的数字,前缀以 &H,可以直接表示十六进制数字。例如,十六进制表示法的 &H10 代表十进制的 16。执行以下代码。Private Sub Form_Click() Dim a As Long a = &H1234 Debug.Prin...

华县15931252785: SQL数据库中密码16进制怎么转换为字符串 -
苌安华舒: 要看你是什么编码. 如果是ASC码那么就是8位2进制一个字符,也就是两个十六进制位. 所以,你可以将这个十六进制字符串除0x以外,两位一组,每一组可以使用CHAR(0x0C)的方式转换为字符,再串加在一起就行了. 如果是UNICODE字符,那么就是4位十六进制(16位二进制)一组进行转换. 如第一个字符就是:select nchar(0x0C45),第二个字符就是select nchar(0x0000)

华县15931252785: 怎么把16进制的ASC码转换成字符串的显示,用python实现 -
苌安华舒: #将16进制字符转成二进制字符 def str2byte(s): base='0123456789ABCDEF' i=0 s = s.upper() s1='' while ic1=s[i] c2=s[i+1] i+=2 b1=base.find(c1) b2=base.find(c2) if b1 == -1 or b2 == -1: return None s1+=chr((b1return s1 s = 'C7 EB CE F0 BE C...

华县15931252785: ASC代码怎样转换成汉字? -
苌安华舒: 汉字代码使用两个字节,每字节最高位为1.是扩展码. ASCII码使用一个字节.无特殊标志.ASCII扩展为两个字节,最左边补字节.把两个字节的最高位设为1,即得ASCII码在汉字码中的位置.不过没有什么实际意义

华县15931252785: PB中把字怎么将 ASC 转换为字符 -
苌安华舒: 那可以呀,应该是统一规律的,每八位一取,如下:1,先做一个全局函数,函数名称为:gf_trans2dec,返回值为int型,参数为string型,参数名为:as_bin,然后写如下函数体:略2,调用:string ls_asc = "1111000010100101......" //ASC...

华县15931252785: 怎样用ASC码打汉字 -
苌安华舒: 用ASCII码打汉字吧~以Windows2000为例, 你可以在“开始”-“程序”-“附件”-“系统工具”-“字符映射表”中,选中“高级查看” 字符集设置为“Windows 中文简体” 然后选中你要的汉字,在状态栏中可以看到0xaaaa字样, 其中aaaa为十六进制数,你可以将其转换到十进制数x, 就可以用Alt+X输入了至于要找到“爱”,设置“分组”为“按拼音”,然后可以方便找到,在状态栏中可以看到: U+7231(0xB0AE):CJK统一表意符号 将B0AE转换为十进制:45230 Alt+45230就可以输入 爱

华县15931252785: python 16进制转字符串 -
苌安华舒: #将16进制字符转成二进制字符def str2byte(s): base='0123456789ABCDEF' i=0 s = s.upper() s1='' while i < len(s): c1=s[i] c2=s[i+1] ...

华县15931252785: 怎么将十六进制编码转换为字符串 -
苌安华舒: 以每个字节为单位,转化为对应的ascii码即可 以每个字节为单位,转化为对应的ascii码即可 以每个字节为单位,转化为对应的ascii码即可

华县15931252785: c语言怎么把ASC值转化成字符.例如把97转化为a,要代码 -
苌安华舒: #include <iostream>#include <stdio.h> using namespace std; int main() { cout << "Hello world!" << endl; int temp =98; char s = temp + 97 - 'a'; cout <<s<<endl; return 0; }//亲自运行可靠,temp可随便改 楼上才是C语言,我的是C++呵呵,可以加一行printf("%c",temp);//stdio.h

华县15931252785: 把一位16进制数转化为对应的ASCII码. -
苌安华舒: 补充:之前第一段话说的有问题,所以修改了下,如下:(另外提交的时候没注意,第一个兄弟的回答已经是正确的了^_^) 主要思想是0~9转为对应的ASCII码时加30h,而a,b,c,d,e,f则加37h,比30h多出来的7h就是通过adc(多加了CF的01h)...

华县15931252785: 如何把16进制数转换为对应的ASCII字符? -
苌安华舒: int main(int argc, char* argv[]) { char xNo=0x60; printf("转换的结果: %c!\n", xNo+0x10); return 0; }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网