python学习笔记-Python中定义字符串

字符串可以用' '或者" "括起来表示。

1.如果字符串本身包含' ',则可以用" "括起来表示,如:"I'm OK."

2.如果字符串本身包含" ",则可以用' '括起来表示,如:'Learn "Python" in imooc'

3.如果字符串本身即包含' '又包含" ",这时候需要对特殊字符进行转义,Python字符串用\进行转义。

如:Bob said "I'm OK".,可以表示为:'Bob said \"I\'m OK\".'

 

常用的转义字符还有:

\n  表示换行

\t  表示一个制表符

\\  表示\字符本身

 

任务

请将下面两行内容用Python的字符串表示并打印出来:

  Python was started in 1989 by "Guido".

  Python is free and easy to learn.

代码如下:

print'Python was started in 1989 by \"Guido\".'
print "Python is free and easy to learn."

如果字符串有很多需要转义的字符,可以在字符串前面加个前缀“r”,表示这是一个raw字符串,里面的字符就不需要转义了。

如:

r'\(~_~)/ \(~_~)/'

但是r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串

如果要表示多行字符串,可以用'''...'''表示:

'''Line 1
Line 2
Line 3'''

上面这个字符串的表示方法和下面的是完全一样的:

'Line 1\nLine 2\nLine 3'

还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串:

r'''Python is created by "Guido".
It is free and easy to learn.
Let's start learn Python in imooc!'''

任务

请把下面的字符串用r'''...'''的形式改写,并用print打印出来:

'\"To be, or not to be\": that is the question.\nWhether it\'s nobler in the mind to suffer.'

代码如下:

print r'''"To be, or not to be": that is the question.
Whether it's nobler in the mind to suffer.'''

Unicode字符串表示方式,以Unicode表示的字符串用u'...'表示,如:print u'中文'

注意: 不加 u ,中文就不能正常显示。

Unicode字符串除了多了一个 u 之外,与普通字符串没啥区别,转义字符和多行表示法仍然有效:

转义:

u'中文\n日文\n韩文'

多行:

u'''第一行
第二行'''

raw+多行:

ur'''Python的Unicode字符串支持"中文",
"日文",
"韩文"等多种语言'''

如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释

# -*- coding: utf-8 -*-

目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。

 

任务

用多行Unicode字符串表示下面的唐诗并打印:

静夜思

床前明月光,zhu
疑是地上霜。
举头望明月,
低头思故乡。

代码如下:

# -*- coding: utf-8 -*-

print '''静夜思
床前明月光,
疑是地上霜。
举头望明月,
低头思故乡。'''

注意:因为第一行添加了注释# -*- coding: utf-8 -*-,所以print 后面不需要加u了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值