python变量与字符串

python变量与字符串

首先尝试在hello.py中使用一个变量message,如下:

message = "hello python!"
print (message)

运行这个程序,结果如下:

hello python!

在这个文件里面,我们添加了一个名为message的变量。每个变量都存储了一个值----与变量相关联的信息。在这里,存储的值为文本“hello python!”。添加这个变量,导致python解释器在处理第一行代码时,将文本“hello python!”与message关联起来;而处理第二行代码时,他将与变量message关联的值打印到屏幕上。
接下来,我们进一步扩展,如下:

message = “hello python!”
print (message)

message = "hello world!"
print (message)

运行结果如下:

hello python!
hello world!

这意味着在程序中可随时修改变量的值,而python将记录变量的最新值。

python变量的命名和使用

在python中使用变量时,需要遵守以下规则:

  • 变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头
  • 变量名不能包含空格,但可使用下划线来分隔其中的单词。
  • 不要将python关键字和函数名用作变量名,即不要使用python保留字用于特殊用途的单词。如:print
  • 变量名应既简短又具有描述性。
  • 慎用小写字母l和大写字母O,因为可能会被错看成数字1和0.

字符串

字符串就是一系列字符。在python中,用引号括起的都是字符串,其中的引号可以是单引号、双引号,如下:

”this is a string.“
'this is also a string.'

使用方法修改字符串的大小写

对于字符串,可执行的最简单的操作之一是修改其中的单词的大小写,如下:
name.py

name = "ada lovelace"
print (name.title())

保存后运行结果如下:

Ada Lovelace

在这个示例中,小写的字符串“ada lovelace”存储到了变量name中,在执行ptint()语句中,方法title()出现在这个变量的后面。方法是python可对数据执行的操作。在name.title()中,name后面的句点(.)让python对变量name()执行方法title()指定的操作。每个方法后面都跟着一对括号,这是因为方法通常需要额定的信息来完成其工作。这种信息是在括号内提供的。函数title()不需要额外的信息,因此它后面的括号是空的。
title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。
还有一些将字符串改为全部大写和全部小写,如下:

name = "Ada Lovelace"
print (name.upper())
print (name.lower())

运行结果如下:

ADA LOVELACE
ada lovelace

存储数据时,方法lower()很有用,因为很多时候,你无法依靠用户提供正确的大小写,因此需要将字符串先转换为小写,再存储它们。以后需要显示这些信息时,再将其转换为适合的大小写方式。

合并(拼接)字符串

python使用加号(+)来合并字符串,如下:

first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
print (full_name)

运行结果如下:

ada lovelace

在这个示例中,我们使用+来合并first_name、空格和last_name,以得到完整的姓名,这种合并字符串的方法称为拼接。通过拼接,可使用存储在变量中的信息来创建完整的信息。如下:

first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name

print (“Hello, ” + full_name.title() + "!")

运行如下:

Hello, Ada Lovelace!

也可以将拼接好的信息保存在变量中,如下:

first_name = “ada”
last_name = "lovelace"
full_name = first_name + " " + last_name

message = "Hello, " + full_name.title() + "!"
print (message)

运行结果和上面的一样,也是“Hello, Ada Lovelace!”

使用制表符或换行符来添加空白

空白泛指任何非打印字符,如空格、制表符和换行符。你可使用空白来组织输出,以使其易读。
要在字符串中添加制表符,可使用字符组合\t,如下所示:

>>>print ("python")
python
>>>print ("pyth\ton")
pyth	on

在字符串中添加换行符,使用\n:

>>>print ("Language:\nC\npython")
Language:
C
python

删除空白

在程序中,额外的空白可能令人迷惑。‘python’和‘python ’看起来几乎没什么两样,但对程序来讲,它们却是两个不同的字符串。python能够发现‘python ’中额外的空白,并认为它是有意义的。
空白很重要,因为你经常需要比较两个字符串是否相同。例如,比较登陆网站时检查用户名和密码时。但是在python中删除用户输入的数据中多余的空白易如反掌。
python能够找出字符串开头和末尾多余的空白。要确保字符串末尾没有空白,可使用方法rstrip()。

>>> favorite_language = 'python     '
>>> favorite_language
'python     '
>>> favotite_language.rstrip()
'python'
>>> favorite_language
'python     '

存储在变量favorite_language中的字符串末尾包含多余的空白,在终端会话中向python询问这个变量的值时,可看到末尾的空格,对变量favorite_language调用retrip()后,多余的空格就被删除了,然而,这种删除只是暂时性的,接下来再次调用favorite_language的值时,你会发现这个字符串与输入时一样,依然包含多余的空白。
要永久删除这个字符串中的空白,必须将删除操作的结果存回到变量中:

>>> favorite_language = 'python     '
>>> favorite_language = favorite_language.rstrip()
>>> favorite_language
'python'

还可以删除字符串开头的空白,或同时删除字符串两端的空白,可分别使用方法lstrip()和strrip():

>>> favorite_language = '     python     '
>>> favorite_language.rstrip()
'     python'
>>> favorite_language.lstrip()
'python     '
>>>favorite_language.strrip()
'python'

使用字符串时避免语法错误

程序中包含非法的python代码时,就会导致语法错误,例如:在用单引号括起的字符串中,如果包含撇号,就将导致错误。这是因为这会导致python将第一个单引号和撇号之间的内容视为一个字符串,进而将余下的文本视为python代码,从而引发错误。
下面演示了如何正确地使用单引号和双引号。
apostrophe.py

message = "One of python's strengths is its diverse community."
print (message)

撇号位于两个双引号之间,因此python解释器能够正确地理解这个字符串,结果如下:

One of python's strengths is its diverse community.

如果使用单引号,python将无法正确地确定字符串地结束位置,如下:

message = ‘One of python's strengths is its diverse community.’
print (message)

输出如下:

file "apostrophe.py", line 1
	message = 'One of python's strengths is its diverse community.'
	                                          ^
SyntaxError:invalid syntax

根据上述输出信息可知道错误发生在第二个单引号后面,这种语法错误表明,在解释器看来,其中有些内容不是有效地python代码。
注:编写程序时,编辑器地语法功能可帮助你快速找出某些语法错误。看到python代码以普通句子地颜色显示,或者普通句子以python代码地颜色显示时,就可能意味着文件中存在引号不匹配地错误。

python 2中print语句

在python2中,print语句的语法稍有不同:

>>> python2.7
>>> print "hello python 2.7 world!"
hello python 2.7 world!

在python 2中,无需将要打印的内容放在括号内。从技术上讲,python 3中print 是一个函数,因此括号必不可少。有些python 2 print 语句也包含括号,但其行为与python 3中稍有不同。简单地说,在python 2代码中,有些print 语句包含括号,有些不包含。

注:本文章地内容来源于书:Python编程从入门到实践,有需要本书高清PDF的,私我博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值