www.2527.com_澳门新葡8455手机版_新京葡娱乐场网址_
做最好的网站

程序猿提亲代码,关于Unicode的详细意况

2020-01-25 18:39 来源:未知

时间: 2019-06-10阅读: 10344标签: 程序员

关于Unicode的详细情况可以参考百度百科:http://baike.baidu.com/view/40801.htm

Web前端 1

许多程序员小伙伴总是苦于找不到合适的告白方式。小编特地收集了一些程序员专属的告白方式与大家分享,一起看看程序员用代码敲出的浪漫吧~

这里简单的说一下。(下面内容基本上时从《Python.Core.Programming.2ed》上摘的)
Unicode是计算机可以支持这个星球上的多种语言的秘密武器,在Unicode之前,用的都是ASCII,ASCII吗非常简单,每个英文字符都用7位二进制数的方式存储在计算机内,其范围是32到126.它的实现原理这里也不说了。
但是ASCII码只能表示95个可打印的字符,后来把ASCII扩展到了8位,这样就能表示223个字符了,虽然这个来表示欧美字母语言已经足够了,但是对于像中文等语系来说就太少了。于是Unicode码诞生了。
Unicode通过使用一个或者多个字节来表示一个字符,这样就突破了ASCII的限制,这样,Unicode可以表示超过90000个字符了。

现在流行一个词叫做“鄙视链”,有人的地方就有江湖,各行各业各种圈子都存在,比如玩英雄联盟的看不起玩“荣耀”的、自由行看不起包团旅游的、喝奶茶看不起加珍珠的、喝百事可乐看不起喝可口可乐。在程序员这一行也存在这样一条“鄙视链”,有老婆的程序员>没有老婆有...

I Love You Batch le

Python 与Unicode

现在流行一个词叫做“鄙视链”,有人的地方就有江湖,各行各业各种圈子都存在,比如玩英雄联盟的看不起玩“荣耀”的、自由行看不起包团旅游的、喝奶茶看不起加珍珠的、喝百事可乐看不起喝可口可乐。

送她一个惊喜怎么样?情人节向她示爱,让她的电脑自动关机,然后显示你的表白留言。具体操作如下:

为了让Unicode和ASCII码值的字符串看起来尽可能的相像,Python的字符串从原来的简单数据类型改变成了真正的对象,ASCII字符串成了StringType,而Unicode字符串成了UnicodeType类型,他们的行为非常相近。String模块里面都有相应的处理函数。String模块已经停止了更新,只保留了对ASXII码的支持,string模块已经不推荐使用,在任何要跟Unicode兼容的代码里都不要再用该模块,Python保留该模块仅仅为了向后兼容。
Python里面默认所有字面上的字符串都用ASCII编码,可以通过在字符串前面加一个‘u’前缀的方式声明Unicode字符串,这个‘u’前缀告诉Python后面的字符串要编成Unicode字符串。

在程序员这一行也存在这样一条“鄙视链”,有老婆的程序员>没有老婆有女朋友的程序员>没有女朋友的程序员,在没有女朋友的程序员之间才存在语言、编辑器和操作系统的互相鄙视。可以说有老婆的程序员是站在最顶端的。

1.创建一个新的文本文件。

>>> "Hello World" #ASCII string
'Hello World'
>>> u"Hello World" #Unicode string
u'Hello World'

程序员目前来看在相亲市场上还是相当吃香的,工资高、加班多没时间去沾花惹草、一般都是理工直男不会渣。但为什么找到一个女朋友就显得特别难呢?问了几个同事,有的说没时间;有的说太难;有的说不好意思;有的人说没啥优势不会表白,会唱歌的,唱一首歌表白,会写诗的写个情书表白,但我们程序员能做什么呢?难道要把代码发给她么?

2.将以下代码复制到新创建的文件中

内建的str()函数和chr()函数不能处理Unicode,它们只能处理常规ASCII编码的字符串,如果一个Unicode字符串作为参数传给了str()函数,它会首先被转换成ASCII码字符串然后交给str()函数。

为什么不呢?美术生可以画幅画给女生表白,学园艺的可以用造型奇特的绿植表白,打篮球的可以在球场上赢得女孩子的欢心,那么程序员为什么不可以用代码将女生征服呢?

@echo offmsg * I LOVE YOU shutdown -c "Error! You are too CUTE!" -s

Codecs

Web前端,说干就干,跟我们公司的人事行政说了一下,在公司群里要举办一个程序员代码情书表白活动,

3.将文件的扩展名从“.txt”更改为“.bat”

Codec是把Coder/DECoder得首字母组合,它定义了文本跟二进制的转换方式,跟ASCII那种用一个字节把字符转换成数字的方式不同,Unicode用的是多字节,这导致了Unicode支持多种不同的编码方式,比如说codec支持的四种耳熟能详的编码方式是:ASCII,ISO8859—1/Latin-1,UTF-8,和UTF-16
最著名的是UTF-8编码,它也用一个字节来编码ASCII字符,这让那些必须同时处理ASCII码和Unicode码文本的程序员的工作变得非常轻松,因为ASCII字符的UTF-8编码和ASCII编码完全相同。
UTF-8编码可以用1到4个字节来表示其他语言的字符,这给那些需要直接处理Unicode数据的程序员带来了麻烦,因为他们没有办法按照固定长度逐一读出各个字符,幸运的是我们不需要掌握直接读取Unicode数据的方法,Python已经替我们完成了相关细节,我们无需为处理多字节字符的复杂问题而担心。
UTF-16也是一种变长编码,但是它不常用。

第一批反对的是程序员们,他们觉得公司的女生看不懂太麻烦,说这么无聊的事才不会去做呢。

4.最后一步想办法让你的女朋友打开文件

编码解码

出人意料的是活动当天,群里的突然涌现出了一批批的代码截图,堪称大型打脸现场。那天晚上群里表白情书不断涌现,女生们看得热血沸腾,感动得稀里哗啦,被表白的几个女生直接沦陷了,说出来你都不信,程序员浪漫起来真的是太温柔太帅了。

C 我爱你的程序

Unicode支持多种编码格式,这为程序员带来了额外的负担,每当你向一个文件写入字符串的时候,你必须定义一个编码用于把对应的Unicode内容转换成你定义的格式,Python通过Unicode字符串的encode()函数解决了这个问题,该函数接受字符串中的字符为参数,输出你指定的编码格式的内容。
所以,每次我们写一个Unicode字符串到磁盘上我们都要用指定的编码器给他“编码“一下,相应地,当我们从这个文件读取数据时,我们必须”解码”该文件,使之成为Unicode字符串对象。
简单的例子:
下面的代码创建了一个Unicode字符串,用UTF-8编码器将它编码,然后写入到一个文件中去,接着把数据从文件中读回来,解码成Unicode字符串对象,最后,打印出Unicode字符串,用以确认程序正确地运行。
在Linux中编写,在VIM中输入如下代码,保存为uniFile.py,红字是我加的注释

下面给大家精选了几张截图,大家可以看一下,很简单,很浪漫,如果一句“我喜欢你”能把你憋死,那么就用你擅长的语言去表白的,不管是C语言还是php。

如果你想像CPP程序员那样求婚,请运行这个C 我爱你的程序

# /home/xiaopeng/python/code/uniFile.py
'''
An example of reading and writing Unicode strings:Writes
a Unicode string to a file in utf-8 and reads it back in
'''

CODEC = 'utf-8'         编码方式
FILE = 'unicode.txt'    要存的文件名

hello_out = u"Hello worldn"   创建了一个Unicode格式的字符串
bytes_out = hello_out.encode(CODEC)   用UTF-8编码
f = open(FILE,'w')    
f.write(bytes_out)             写入指定文件中
f.close()

f = open(FILE,'r')
bytes_in = f.read()          读取
f.close()
hello_in = bytes_in.decode(CODEC)    解码
print hello_in                       打印

这个爱心是有运行结果的,下图

#includeiostream#includecmathusing namespace std;int main(){double x, y,size=10;char ch=3;string message(" I Love You ");int print_line = 4;if(message.length() % 2 != 0)message  = " ";for(x=0;xsize;x  ){for(y=0;y=4*size;y  ){double dist1 = sqrt( pow(x-size,2)   pow(y-size,2) )double dist2 = sqrt( pow(x-size,2)   pow(y-3*size,2)if (dist1  size   5 || dist2  size   0.5 ) {cout ch;}elsecout " ";}cout"n";}for(x=1;x2*size;x  ){for(y=0;yx;y  )cout  " ";for (y=0;y4*size   1 - 2*x; y  ){if (x= print_line - 1  x = print_line   1) {int idx = y - (4*size - 2*x - message.length()) / 2;if(idx  message.length()  idx = 0) {if (x == print_line)coutmessage[idx];else cout  " ";}elsecout  ch;}elsecout ch;}coutendl;}return 0;}

在终端中输入:python uniFile.py
结果打印出 Hello world
然后我们在python目录下会发现多了一个名为unicode.txt的文件,用cat命令查看一下,发现里面的内容和打印的结果一样.

这篇代码情诗运行起来是这个样子的

Proposal In Binary

把Unicode应用到实际中注意一下四点:
1 程序中出现字符串时一定要加一个前缀u
2 不要用str()函数,用Unicode()代替
3 不要用过时的string模块。如果传给它非ASCII码,它会把一切搞砸。
4 不到必须时不要在你的程序里编解码Unicode字符,只在你要写入文件或者数据库或者网络时,才调用encode()函数和decode()函数。

下面这个要称之为情圣了。

万一你太害羞了,不好意思表达自己的感情,只需要想办法让你的女朋友来解码这个二进制文件。一旦她解码了这个二进制文件,就可以看到你隐藏的相对她说的话。你只需要这样做对照ASCII表找到你想说的话,用二进制表达出来。如下所示

程序员也有不少的文艺青年,这个加持相当有爱了。

01101001 00100000 01101100 01101111 01110110 0110010

当然还有许多炫酷的,这里就不上图了,因为都是需要运行的,如果有需要的可以找我单独要一下。

还不知道怎么做?有一位程序大佬要向女朋友表白,在聊天期间发给了女朋友一串数字:73、76、79、86、85

每个人表达的方式虽然不同,但内心的柔软和浪漫都是盖不住的,虽然程序员每天面对的是代码和计算机,各种逻辑各种需求,每个人都是理性的直男,但当遇到自己喜欢的人的时候,内心的浪漫都会迸发出来。

一步步引导女友,最终女友通过“ASCII对照表”破译5个数字:翻译过来为“ILOV U”尽管love不够完整,依旧成功撩到女友。

如果你是程序员,不习惯于说“我喜欢你”的话,不妨试试用你最擅长的语言去表白你最喜欢的人,如果你的男朋友是程序员,他还没跟你表白的话,一定是还没找到他最擅长的语言。如果你还没有表白的对象,可以自己创建一个,不是,你可以留着备用。

程序员的情书

月明千里,一个码字的程序员小黑,关注我,每天带你涨知识。

在给女朋友写情书的时候,为什么不用自己的技术来展示自己呢?学会用自己领域的专业术语,来向你的女朋友示爱吧!

Void missing_you()For(time=meet_you;;time  )Missing_you()

自从遇见你,就没有一刻不想你

?phpwhile(me-met()==your-self()){ print("hello,world");}?

我一直在寻找

找到了你

便找到了全世界

everBoy = aFlyBird.wafting(far).alone();nowBoy = eberBoy.flying(long);honeyLife = nowBoy.meet();

我曾是孤单的飞鸟

飘荡在远方的天空

如今我飞得太久

才知道你就是春天

while(1){ NSString *myLife = @ "吃饭睡觉撸代码"; if(myLife containsString:@"YOU"){ NSLog(@"余生请多指教"); };};

我用一生在等待

直到你闯入我的世界

我只想对你说:余生请多指教

while (life  end) {love  ;}

直到死之前,每天爱你多一点

while(!world.destroy){ System.out.println("i love you");}

爱你到天荒地老

if(mountain.arris==None):if(river.water==None):if(winter.thunder==True):if(summer.snow==True):if(sky.height==ground.height):i.withyou=Falseelse:i.withyou=True

山无陵, 江水为竭,

冬雷震震, 夏雨雪,

天地合, 乃敢与君绝!

代码操控中央灯,大楼表白

百度资深的程序员“Peter”,为了给心爱女孩表白

悄悄溜进了百度大楼的是中央控制室,

写下控制智能灯的程序,

在后台定义了文字和动态功效。

随后百度大楼上出现了

灯光组合的“Ilove u贝贝”字样

TAG标签:
版权声明:本文由澳门新葡8455手机版发布于Web前端,转载请注明出处:程序猿提亲代码,关于Unicode的详细意况