Python中单引号和双引号的作用
2024-08-22 19:00:04
一、单引号和双引号
在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如
str1 = 'python'
str2 = "python"
str1和str2是没有任何区别的。但是如果遇到需要转义字符的情况,来看单引号和双引号的版本。
单引号版本:
str3 = 'We all know that \'A\' and \'B\' are two capital letters.'
双引号版本:
str4 = "We all know that 'A' and 'B' are two capital letters."
单引号需要加 '\' 来让编译器判断目前是转义字符,而双引号方便了很多。
反之,如果字符串中有双引号,为了避免使用转义符,可以使用单引号来定义这个字符串。
str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'
二、3个单引号及3个双引号
实际上3个单引号和3个双引号不经常用,但是在某些特殊格式的字符串下却有大用处。通常情况下我们用单引号或者双引号定义一个字符串的时候只能把字符串连在一起写成一行,如果非要写成多行,就得在每一行后面加一个\表示连字符,比如:
str1 = "List of name:\
Hua Li\
Chao Deng"
而且即使你这样写也不能得到期望的输出:
List of name:
Hua Li
Chao Deng
实际上输出是下面这样的:
>>> str1 = "List of name:\
... Hua Li\
... Chao Deng"
>>> print(str1)
List of name: Hua Li Chao Deng
那么该如何得到我们期望的一行一个名字的输出格式呢?这就是3个引号的作用了:
>>> str1 = """List of name:
... Hua Li
... Chao Deng
... """
>>> print(str1)
List of name:
Hua Li
Chao Deng
虽然我们也可以通过给字符串加上\n实现:
>>> str1 = "List of name:\nHua Li\nChao Deng"
>>> print(str1)
List of name:
Hua Li
Chao Deng
但是这样在输入的时候看起来就乱了很多。所以这种情况下尽量使用3个引号,至于3个单引号还是双引号都是一样的,只需要注意如果字符串中包含有单引号就要使用双引号来定义就好了。
而且使用3个引号还有一个特别棒的作用就是:加注释
>>> str1 = """
... List of name:
... Hua Li # LiHua
... Chao Deng # DengChao
... """
>>> print(str1) List of name:
Hua Li # LiHua
Chao Deng # DengChao
此外,多行注释也可以用用三个单引号 ''' 或者三个双引号 """ 将注释括起来,例如:
单引号版本:
#!/usr/bin/python3
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
print("Hello, World!")
双引号版本:
#!/usr/bin/python3
"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号
这是多行注释,用三个双引号
"""
print("Hello, World!")
参考链接:https://www.cnblogs.com/zzdbullet/p/10025301.html
最新文章
- mybatis中的#{}和${}
- 整数划分问题-解法汇总(暂有DP-递归)
- [LeetCode] Copy List with Random Pointe
- Unity3D中Update和Lateupdate的区别
- python把元组组合成字典
- VS2012 编译 Assimp
- 前N个自然数的随机置换
- [PHP]如何在百度(BAE)和新浪(SAE)的云平台使用PHP连接MySQL并返回结果数据
- 《Python基础教程(第二版)》学习笔记 ->; 第九章 魔法方法、属性和迭代器
- innodb_strict_mode=1
- css-实现元素垂直居中对齐
- JavaScript实现回到顶部
- Spring基于注解的Cache支持
- vs UNICODE 零散的笔记
- 【SignalR学习系列】1. SignalR理论介绍
- linux 下 nc 命令的使用
- hdu 3016 dp+线段树
- 【Android Studio安装部署系列】二十一、Android studio将项目上传到github中
- Delphi 2010 新增功能之: IOUtils 单元(6): TPath(结构体) 的方法与属性
- 6个项目带你全面掌握Laravel框架
热门文章
- 有哪些ABAP关键字和语法,到了ABAP云环境上就没办法用了?
- SAP 2019 TechEd Key Note解读:云时代下SAP从业人员如何做二次开发?
- 0001-代码仓库-mvn
- IAR8.X安装教程
- zabbix Server 4.0 报警(Action)篇
- jquey动画效果
- Skew-symmetric matrix
- 云计算/云存储---Ceph和Openstack的cinder模块对接方法
- React中的State与Props
- [牛客网 -leetcode在线编程 -01] max-points-on-a-line -穷举