亲宝软件园·资讯

展开

Python变量及字符串

薛定谔的猫ovo 人气:0

变量

当把一个值赋给一个名字时,它就会存储在内存中,我们把这块内存称为变量(variable)

在大多数语言中,都把这种行为称为"给变量赋值"或"把值存储在变量中"。不过,Python与大多数其他语言不同,它并不是把值存储在变量中,而更像把名字贴在值上面。所以,有些人会说Python没有变量,只有名字。变量就是一个名字,通过这个名字,我们可以找到想要的东西。

例如:

变量之所以称之为变量,正是因为它是可变的。

在上面的例子中,先创建了一个变量名叫x,给它初始化赋值为3,然后又给它赋值为5(此时3就被5替换);再创建另一个变量y,并初始化赋值为8;最后创建变量z,其值是变量x和y的和。

同样,这样的加法也可以运用到字符串中:

这种字符串加字符串的语法,在Pythonn里称为字符串的拼接

关于变量

变量名命名规则

- 变量名由数字、字母、下划线组成。**但不能以数字开头**

- 命名时应当避开关键字。

```python
#查看python关键字
import keyword
kw = keyword.kwlist
print(kw)
```

```python
#运行结果
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
```

字符串

我们所认知的字符串就是引号内的一切东西,我们也把字符串叫作文本,文本和数字是不一样的。

如果直接让两个数字相加,那么得到的会是数字相加后的结果;但如果在数字两边加上了引号,那就变成了字符串的拼接,这正是引号带来的差别:

在Python中创建一个字符串,要在字符串两边加上引号,可以是单引号或者双引号,但是必须成对,不能一边用单引号,一边用双引号。

那么如果字符串内容中本身就有单引号或双引号怎么办?

一般有两种解决方法:

<1> 使用转义符号( \ )对字符串中的引号进行转义

<2> 利用Python既可以用单引号也可以用双引号表示字符串的特点,用不同的引号表示字符串,就不会产生歧义了:

原始字符串

对于字符串中带有 \ 的情况:例如打印C:\now

可以看到,打印结果并不是我们所预期的,这是由于反斜杠(\)和后边的字符(n)恰好转义之后构成了换行符(\n)。

这时,可能有的人会想到用反斜杠来转义反斜杠不就可以了吗?确实是这样的,我们可以用反斜杠对自身进行转义

这样确实是可行的,但是,如果一个字符串中有多个反斜杠,那么这样做不仅很麻烦,而且可能会使代码变得混乱。

对于这个问题,在Python中有一个快捷的方法,就是使用原始字符串,原始字符串的使用非常简单,只需要在字符串前面加一个英文字母r即可:

需要注意的是,无论是否是原始字符串,都不能以反斜杠作为结尾!

这是因为反斜杠放在字符串末尾表示该字符串还没有结束,换行继续的意思

如果非要在字符串的结尾加个反斜杠,则可以利用反斜杠转义:

长字符串

如果希望得到一个跨越多行的字符串,如:

从明天起,做一个幸福的人
喂马,劈柴,周游世界
从明天起,关心粮食和蔬菜
我有一所房子,面朝大海,春暖花开

如果要把这段话打出来,利用学过的知识,可以使用多个换行符(\n)

如果行数非常多的话,那么用换行符就太麻烦了,好在Python中提供了解决问题的办法——只需要使用三重引号字符串(" " " 内容 " " ")就可以了。

最后,要注意的是,在编程过程中要用英文的标点符号,初学者最容易犯的错误就是误用了中文的标点符号,导致了语法错误。

总结

加载全部内容

相关教程
猜你喜欢
用户评论