零基础入门学习Python(3)--小插曲之变量和字符串

时间:2021-06-17 13:49:07

前言

小甲鱼说,在对前边的小游戏改善前,先了解下,Python中的变量与字符串。

主要内容

  • 变量

    变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储在内存中,称之为变量(variable),在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”

    不过python与大多数其他计算机语言的做法稍有不同,Ta并不是把值存储在变量中,而更像是把名字贴在值的上边。

    所以有些python程序员会说“python”没有“变量”,只有“名字”。

    举个例子:

    >>> teacher = '小甲鱼'
    >>> print(teacher)
    小甲鱼
    >>> teacher = '老甲鱼'
    >>> print(teacher)
    老甲鱼
    >>>
    >>> first = 3
    >>> second = 8
    >>> third = first + second
    >>> print(third)
    11
    >>>
    >>> myteacher = '小甲鱼'
    >>> yourteacher = '黑夜'
    >>> ourteacher = myteacher + yourteacher
    >>> print(ourteacher)
    小甲鱼黑夜
    >>>

    使用变量需要注意的地方:

    • 在使用变量之前,需要对其先赋值

      >>> fishc
      Traceback (most recent call last):
      File "<pyshell#15>", line 1, in <module>
      fishc
      NameError: name 'fishc' is not defined
    • 变量名可以包含字母、数字、下划线,但变量名不能以数字开头。

      >>> 1f = '3'
      SyntaxError: invalid syntax
    • 字母可以是大写或小写,但大小写是不同的。也就是说fishc和FishC对于python来说是完全不同的两个名字。
    • 等号=是赋值的意思,左边是名字,右边是值,不可写反。
    • 变量的命名理论可以取任何合法的名字,但作为一个优秀的程序员,请将尽量给变量取一个专业点的名字

  • 字符串

    到目前为止,我们所认知的字符串就是引号内的一切东西,我们也把字符串叫做文本,文本和数字是截然不同的:

    >>> 5 + 8
    13
    >>> '5' + '8'
    '58'
    >>>

    要告诉python你在创建一个字符串,就要在字符两边加上引号,可以是单引号或者双引号,但必须成对,你不能一边单引号,另一边却花心的用上双引号结尾。

    >>> 'fishC"
    SyntaxError: EOL while scanning string literal

    如果字符串中需要出现单引号或双引号怎么办?例如我想打印字符串:Let’s go!

    有两种方法,第一种比较常用,就是使用我们的转义符号\对字符串中的引号进行转义:

    >>> 'Let's go!'
    SyntaxError: invalid syntax
    >>> print('Let's go!')
    SyntaxError: invalid syntax
    >>> print('Let\'s go!')
    Let's go!

    第二种,对此字符串加上",例如: print("Let's go!")


  • 原始字符串

    好像反斜杠是一个好东西,但不妨试试打印:str = 'C:\now'

    >>>print(str)

    C:

    ow


    我们可以用反斜杠对自身进行转义:str = 'C:\\now'

    >>> print(str)

    C:\now

    但如果对于一个字符串中有很多个反斜杠:

    str ='C:\Program Files (x86)\Intel\Bluetooth'

    这时候就可以使用原始字符串,只需要在字符串前边加一个英文字母r即可:

    str =r'C:\Program Files (x86)\Intel\Bluetooth\'

    原始字符串在最后是不能出现反斜杠,否则会出现语法错误,例如:

    >>> str =r'C:\Program Files (x86)\Intel\Bluetooth\'

    SyntaxError: EOL while scanning string literal

    如果要求要在最后出现反斜杠,该怎么做呢?可以写成以下形式:

    str =r'C:\Program Files (x86)\Intel\Bluetooth''\\'

    >>> print(str)

    C:\Program Files (x86)\Intel\Bluetooth\


  • 长字符串

    如果想把以下文字打印出来,该怎么做?

    我爱鱼C,

    正如我爱小甲鱼,

    他那呱唧呱唧

    呱唧呱唧

    呱唧呱唧的声音,

    总缠绕于我的脑海,

    久久不肯散去......

    这时候可以利用三重引号:

    >>> str = '我爱鱼C,

    正如我爱小甲鱼,

    他那呱唧呱唧

    呱唧呱唧

    呱唧呱唧的声音,

    总缠绕于我的脑海,

    久久不肯散去......'

    SyntaxError: EOL while scanning string literal

    >>> str = '''我爱鱼C,

    正如我爱小甲鱼,

    他那呱唧呱唧

    呱唧呱唧

    呱唧呱唧的声音,

    总缠绕于我的脑海,

    久久不肯散去......'''

    >>> print(str)

    我爱鱼C,

    正如我爱小甲鱼,

    他那呱唧呱唧

    呱唧呱唧

    呱唧呱唧的声音,

    总缠绕于我的脑海,

    久久不肯散去......

    >>> str

    '我爱鱼C,\n正如我爱小甲鱼,\n他那呱唧呱唧\n呱唧呱唧\n呱唧呱唧的声音,\n总缠绕于我的脑海,\n久久不肯散去......'


    `