2、字符串

作者: 魔方宫殿 | 来源:发表于2022-03-15 23:27 被阅读0次

    上集回顾:

    1. 整数(int)和浮点数(float)
    2. 加(+)、减(-)、乘(*)、除(/)、取整(//)、取余(%)
    3. 变量(存储值的存钱罐)
    4. 赋值"=" (把后面的值赋值给前面的变量)

    小P进化之旅再次启程,上集进化了数学,这次该进化语文啦,也就是本集的主角:字符串!

    一、初识字符串
    字符串就是用单引号('……')或双引号("……")包含起来的一串字符,可以是字母、数字和符号,或者是汉字和其他语言符号。比如:

    >>> "Hello, world!"
    'Hello, world!'
    >>> "you're right!"
    "you're right!"
    >>> 'you\'re right!' #'\'反斜杠进行转义
    "you're right!"
    >>> '子曰:"学而时习之"'
    '子曰:"学而时习之"'
    

    这些都是合法的字符串,配合print()函数小P就能输出各种各样的语言支持了。

    >>> print("My name is P")
    My name is P
    >>> print("What's your \name?")
    What's your
    ame?
    

    咦,奇怪的事情又发生了!我在name前面多打了一个"",结果""没有打印出来,"n"也不见了,还发生了换行。原来""就是转义符号,他能把普通字符转成有特殊意义的符号。比如“\n”就是换行的意思。如果不想转义可以在引号前面加个字母'r':

    >>> print(r"What's your \name?")
    What's your \name?
    

    如果字符串特别长,有好几行该如何使用print输出呢?是不是多用几个引号就行了?小P果然聪明!Python使用三引号:"""...""" 或 '''...'''来引用多行字符串,字符串行尾会自动加上回车换行,如果不需要回车换行,在行尾添加 \ 即可。

    >>> print(""" #结尾不加‘\’会在开头多一个空行
    ... 春眠不觉晓,
    ... 处处闻啼鸟。
    ... 夜来风雨声,
    ... 花落知多少。""")
    
    春眠不觉晓,
    处处闻啼鸟。
    夜来风雨声,
    花落知多少。
    >>> print('''\ #结尾加‘\’开头没有空行
    ... 墙角数枝梅,
    ... 凌寒独自开。
    ... 遥知不是雪,
    ... 为有暗香来。''')
    墙角数枝梅,
    凌寒独自开。
    遥知不是雪,
    为有暗香来。
    

    二、字符串拼接
    有时候字符串存储在多个变量里,又想拼接成一个字符串进行打印,该怎么实现呢?很简单,像做加法一样把他们加在一起就行了!

    >>> a = "小P"
    >>> b = "您好!"
    >>> print(a + b)
    小P您好!
    >>> print(a + ': ' + b)
    小P: 您好!
    >>> print(a + '超级'*3 + "牛!")  #'*'乘号能重复一个字符串多次
    小P超级超级超级牛!
    

    如果有个变量age=3,代表小P的年龄,想打印小P今年age岁了,可以直接用加法吗?试验一下:

    >>> name = "小P"
    >>> age = 3
    >>> print(name + age + "岁啦!")
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: must be str, not int
    

    哟吼!出错了!原来数字不能和字符串相加,数字只能和数字相加,字符串也只能和字符串相加!所以想要把数字和字符串拼接,需要把数字转换成字符串才行。比如:

    >>> print(name + "今年" + str(age) + "岁啦!") # str()函数能把数字转成字符串
    小P今年3岁啦!
    >>> print(name + "今年", str(age), "岁啦!") #或者不用加号
    小P今年 3 岁啦!
    

    三、大小写转换
    直接示例:

    >>> a = "hello WorlD!"
    >>> print(a)
    hello WorlD!
    >>> print(a.upper()) #全大写
    HELLO WORLD!
    >>> print(a.lower()) #全小写
    hello world!
    >>> print(a.title()) #每个单词首字母大写
    Hello World!
    >>> print(a.capitalize()) #首字母大写
    Hello world!
    

    本集技能总结:

    1. 初识字符串
    2. 字符串拼接
    3. 大小写转换

    下集见!

    相关文章

      网友评论

        本文标题:2、字符串

        本文链接:https://www.haomeiwen.com/subject/kbsddrtx.html