python学习第七天

字符串 str
作用:
用来记录文本(文字)信息,主要是为人类交互操作来使用的,来自英文单词string的前三个字母。
字符串的表示方法
在非注释中,凡是用引号括起来的部分都是字符串
' 单引号
" 双引号
''' 三单引号
""" 三双引号
字面值:
含义:人能看到的,计算机也能读出来的值,叫做字面值。
空字符串的字面值表示方式
''
""
''''''
""""""
>>> '' #''表示空字符串
''
>>> ""
''
>>> ''''''
''
>>> """"""
''
非空字符串的字面值表达方式
'hello'
"hello"
'''hello'''
"""hello"""
单引号和双引号的区别:
单引号内的双引号不算结束符
双引号内的单引号不算结束符
例如:
如果使用''对如下内容进行字符串输出的时候会报错
>>> print('I'm a it yunwei')
File "<stdin>", line 1
print('I'm a it yunwei')
^
SyntaxError: invalid syntax

因为使用单引号的时候,是以单引号为开始,以单引号为结束,所以,当python解释器运行代码至第二个'的时候
,后方内容无法找到开始符,不符合语法规则,所以报错无效语法。
可以使用这种方法规避报错
>>> print("I'm a it yunwei")
I'm a it yunwei
同理,如果有双引号的话,使用单引号可以规避报错。
三引号字符串:
作用:
三引号字符串的换行会自动转换为换行符\n
三引号内可以包含单引号和双引号
如何表示:
welcome to beijing \nI like python!\nI
am studing!
三引号可以实现隐式换行,直接回车等于\n
例如:
>>> s = """welcome to beijing #每回车一次等于自动输入一次\n,这种属于所见即所得的代码。
... I like python #方便长篇文字的直观输入,并且根据使用的引号类型不同,
... I am studing!""" #可以解决“大部分”的输入问题。
>>> s
"welcome to beijing\nI like python\nI am studing!"
>>>
用转译序列代表特殊字符
字符串字面值中,用字符反斜杠\后跟一些字符代表一个字符
字符串中的转义字符表
\' 代表一个单引号
\" 代表一个双引号
\\ 代表一个反斜杠
\n 换行
\r 返回光标至行首 可以想像成针式打印机或打字机,当\r前边的内容输出完毕之后,将下一个字的光标i
print('aaaaaaaa\rb') 返回至行首,使得\r号后边的内容在本行开头进行打印
baaaaaaaa
\f 换页
\t 水平制表符
\v 垂直制表符
\b 倒退 与键盘中的backspace键大致相同
print('ABCD\rE')
ABCE
\0 空字符,字符值为0
\0oo oo为两位八进制表示的字符 配合ASCII码表表示该文字
\xXX XX为两位十六进制表示的字符
\uXXXX unicode16的十六进制表示的字符
\uXXXXXXXX unicode32的十六进制表示的字符
例如:
在一行中输出如下内容,
在非注释中,凡是用引号括起来的部分都是字符串,'单引号,"双引号,'''三单引号,"""三双引号
s='在非注释中,凡是用引号括起来的部分都是字符串,\'单引号,\"双引号,\'''三单引号,\"""三双引号'
print(s)
ASCII编码:
ASCII 字符表
$man ascii
常用的ASCII编码
字符 十进制 十六进制
'0' 48 0x30
'A' 65 0x41
'a' 97 0x61

raw字符串(原始字符串)
字面值格式:
r'字符串内容'
r"字符串内容"
r'''字符串内容'''
r"""字符串内容"""
作用:
让转移字符\无效
示例
>>> a='C:\newfile\test.py'
>>> a
'C:\newfile\test.py'
>>> print(a)
>>> print(len(a))
16

C:
ewfile est.py
>>> a=r'C:\newfile\test.py'
>>> print(a)
C:\newfile\test.py
>>> print(len(a))
18
由此可见,在字符串开头使用r定义为原始字符串的时候,里面写的什么就会展现什么。
字符串的运算
算术运算符:
+ += * *=
+运算符用于字符串的拼接
语法:
字符串+字符串
绑定字符串的变量 +=字符串
例如:
x='avbsd'+'abcd'
print(x) #输出avbsdabcd,此代码作用为将两端字符串首尾相加,重新组合称新字符串
x +='123'
print(x) #输出avbsdabcd123,可以看对x的最后加上字符串123,重新赋值给x
*运算符用于字符串的多次输出
语法:
字符串*一个整数
绑定字符串的变量*=一个整数
或者
绑定整数的变量*=一个字符串

例如:
>>> x='abcd'*3
>>> print(x)
abcdabcdabcd #可以视作,为x赋值为输出三次abcd\n,在终端打印x
>>> x*=10
>>> print(x)
abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd
>>>
#可以视作将之前的变量x再输出10次

练习:
写一个程序,打印一个高度为4的矩形方框
要求输入一个整数,此整数代表矩形的宽度,输出此矩形。

a = int(input("请输入该矩形框的宽度") or '0')
b = '#'*a
c = (('#'+' '*(a-2)+'#')+'\n')*2+('#'+' '*(a-2)+'#')
if a>1 :
    print(b)
    print(c)
    print(b)
elif a==1 :
    print('''#
                #
        #
        #''')
elif a==0 :
    print('')
del a
del b
del c            

 

posted @ 2018-12-12 07:00  超级苏小畅  阅读(158)  评论(0编辑  收藏  举报