本帖最后由 lixiangyv 于 2019-12-7 20:04 编辑
r是表示这个字符串是原始字符串,
原始字符串就是里面的所有转义字符(\)变成普通的字符串,
例如:
- >>> a = r"C:\n"
- >>> print(a)
- C:\n
复制代码
如果没有字母 r ,上面的代码的结果就是:
因为"\n"表示换行。
有字母 r ,转义字符就不是原来的转义字符了,
就是一个普通的字符了,没有字母 r , 要完成
有字母 r 的字符串的结果,就要这样:
- >>> a = "C:\\n"
- >>> print(a)
- C:\n
复制代码
但是要有很多的反斜杠(\), 这要加到什么时候?原始字符串的发明就是解决这个的。
三个引号(""" 或 ''') 表示这个是长字符串,长字符串可以在IDLE中直接换行,
看打印图形的例子:
- 字符串:
- >>> plane = " * \n\
- * *\n\
- * *\n\
- * *\n\
- * *\n\
- * * * * * *\n\
- * *\n\
- * *\n\
- * *\n\
- * *\n\
- * * * * * * *\n"
- >>> print(plane)
- *
- * *
- * *
- * *
- * *
- * * * * * *
- * *
- * *
- * *
- * *
- * * * * * * *
- 长字符串:
- >>> plane = """ *
- * *
- * *
- * *
- * *
- * * * * * *
- * *
- * *
- * *
- * *
- * * * * * * *"""
- >>> print(plane)
- *
- * *
- * *
- * *
- * *
- * * * * * *
- * *
- * *
- * *
- * *
- * * * * * * *
复制代码
长字符串就不用每个换行的“\n\”了,
因为
symbols = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
这段代码的长字符串没有任何换行,引号就可以写成一个引号。