python语言下不同进制相加不用转换吗
第一个任务:1,为什么一个十进制和一个十六进制相加不换成同一类进制?因为之前学习关于计算机进制的计算都要转换成同类(本人不是计算机专业),2,所有python语言都是以print开头吗?计算机小白请求大神帮忙回答,谢谢
第一个任务:1,为什么一个十进制和一个十六进制相加不换成同一类进制?因为之前学习关于计算机进制的计算都要转换成同类(本人不是计算机专业),2,所有python语言都是以print开头吗?计算机小白请求大神帮忙回答,谢谢
2016-03-23
题主不是计算机专业的,我就题主的问题分开来讲,可能有些啰嗦,见谅。
1,为什么一个十进制和一个十六进制相加不换成同一类进制?
##Python 作为一种解释型语言,所以当我们运行 十进制和十六进制相加时,我们写的代码: print 100+0x11 ##在运行时,Python的解释器,会替我们做他们之间的转换,并且在最后默认给出十进制结果: 117 ##在这岔开一句,说明下 什么是解释型语言,解释型语言和编译型语言是计算机高级编程语言的两大阵营: ##编译型语言: 在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,##就不用再进行翻译了。 ##解释型语言: 在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。 ##C/C++ 等都是编译型语言,而Java,C#,Python等都是解释型语言。
2 .因为之前学习关于计算机进制的计算都要转换成同类(本人不是计算机专业)?
##姑且认为这个是第二个问题吧,这就是Python和其他语言不同的地方, 只能记住了。
3,所有python语言都是以print开头吗?
##并不是这样的, print 在Python2.x 版本中作为一个命令只是,将其后面的结果输出到屏幕上,以供参考学习##,或者作为提示信息用, 随着学习的深入,题主会接触到更多的语句的。
是要换类型的 捋一捋ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。
字母A用ASCII编码是十进制的65,二进制的01000001;
字符0用ASCII编码是十进制的48,二进制的00110000,注意字符'0'和整数0是不同的;
汉字中已经超出了ASCII编码的范围,用Unicode编码是十进制的20013,二进制的01001110 00101101。
你可以猜测,如果把ASCII编码的A用Unicode编码,只需要在前面补0就可以,因此,A的Unicode编码是00000000 01000001
普通的字符串'ABC'在Python内部都是ASCII编码的。Python提供了ord()和chr()函数,可以把字母和对应的数字相互转换:
你可以看下廖老师的博客 ,关于进制转换很清楚的
举报