博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习(二)
阅读量:5263 次
发布时间:2019-06-14

本文共 2453 字,大约阅读时间需要 8 分钟。

接上:

三、基本概念

1、常量:

一个字面意义上的常量的例子是如同5、1.23、9.25e-3这样的数,或者如同'This is a string'、"It's a string!"这样的字符串。它们被称作字面意义上的,因为它们具备 字面 的意义——你按照它们的字面意义使用它们的值。数2总是代表它自己,而不会是别的什么东西——它是一个常量,因为不能改变它的值。因此,所有这些都被称为字面意义上的常量。

2、数:

在Python中有4种类型的数——整数、长整数、浮点数和复数。

  • 2是一个整数的例子。
  • 长整数不过是大一些的整数。
  • 3.2352.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4
  • (-5+4j)(2.3-4.6j)是复数的例子。

3、字符串:

字符串是字符的序列 。字符串基本上就是一组单词。

几乎在每个Python程序中都要用到字符串,所以以下内容非常重要。

如何在Python中使用字符串:

  • 使用单引号('):可以用单引号指示字符串,如'Quote me on this'。所有的空格和制表符都照原样保留。
  • 使用双引号("):在双引号中的字符串与单引号中的字符串的使用完全相同,例如"What's your name?"。
  • 使用三引号('''或"""):利用三引号,可以指示一个多行的字符串。我们可以在三引号中自由的使用单引号和双引号。例如:
'''This is a multi-line string. This is the first line.
This is the second line.
"What's your name?," I asked.
He said "Bond, James Bond."
'''

转义符

假设我们要在一个字符串中包含一个单引号('),可以通过转义符来完成这个任务。例如,这个字符串是What's your name?。我们不能用'What's your name?'来指示它,因为Python会弄不明白这个字符串从何处开始,何处结束。所以,你需要指明单引号而不是字符串的结尾,这里我们用反斜杠\'来指示单引号。所以可以把字符串表示为'What\'s your name?'。另一个表示这个特别的字符串的方法是"What's your name?",即用双引号。类似地,要在双引号字符串中使用双引号本身的时候,也可以借助于转义符。另外,转义符\\来指示反斜杠本身。

注意:在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行。例如:

"This is the first sentence.\
This is the second sentence."

等价于"This is the first sentence. This is the second sentence."

自然字符串

如果我们想要指示某些不需要如转义符那样的特别处理的字符串,那么需要指定一个自然字符串。自然字符串通过给字符串加上前缀r或R来指定。例如r"Newlines are indicated by \n"。

注意:

  • 字符串是不可变的:即我们定义了一个字符串以后我们将不能改变它的值,这跟C++等语言的字符串是不同的。
  • 按字面意义级连字符串:如果把两个字符串按字面意义相邻放着,他们会被Python自动连接。例如,'What\'s' 'your name?'会被自动转为"What's your name?"。
  • 在Python中没有专门的char数据类型。确实没有需要有这个类型。
  • 单引号和双引号字符串是完全相同的。
  • 一定要用自然字符串处理正则表达式,否则会需要使用很多的反斜杠。例如,后向引用符可以写成'\\1'或r'\1'。

格式化方法:

我们可以通过使用format()方法来格式化字符串:

# Filename: str_format.py age = 26name = 'Swaroop' print('{0} is {1} years old'.format(name, age))print('Why is {0} playing with that python?'.format(name))

输出:

C:\Users\Administrator>python D:\python\str_format.py
Swaroop is 26 years old
Why is Swaroop playing with that python?

工作原理:

  • 我们可以通过在字符串后面使用format()方法来将相应的格式和参数整合到字符串中。
  • 例子中{0}对应的是format()的第一个变量name,{1}对应的是其第二个变量age。
  • 注意,我们也可以使用name + ' is ' + str(age) + ' years old' 来达到同样的效果,不过更麻烦,而且容易出错, 这里format()方法会自动代替这里的强制转换,同时,因为变量和字符串本身分离,方便了更改。

format()方法还有更多的用法:

>>> '{0:.3}'.format(1/3) # 为1/3保留3为小数 '0.333'
>>> '{0:_^11}'.format('hello') #输出hello,占11位,两边用'_'填充,优先填充右边,如果填充数小于字符长度,按原字符输出 '___hello___'
>>> '{name} wrote {book}'.format(name='Swaroop', book='A Byte of Python') # 按变量名匹配 'Swaroop wrote A Byte of Python'

转载于:https://www.cnblogs.com/wanglikai91/archive/2011/11/01/2230921.html

你可能感兴趣的文章
Dreamweaver cc新版本css单行显示
查看>>
Java基础教程——网络基础知识
查看>>
Kruskal基础最小生成树
查看>>
【hdu 1429】胜利大逃亡(续)
查看>>
javascript之Style物
查看>>
Factory Design Pattern
查看>>
P1192-台阶问题
查看>>
Java线程面试题
查看>>
Flask三剑客
查看>>
【BZOJ4516】生成魔咒(后缀自动机)
查看>>
提高PHP性能的10条建议
查看>>
Java大数——a^b + b^a
查看>>
简单的数据库操作
查看>>
帧的最小长度 CSMA/CD
查看>>
树状数组及其他特别简单的扩展
查看>>
普通求素数和线性筛素数
查看>>
PHP截取中英文混合字符
查看>>
【洛谷P1816 忠诚】线段树
查看>>
电子眼抓拍大解密
查看>>
tomcat7的数据库连接池tomcatjdbc的25个优势
查看>>