"BuBuPython""get-up"
'BuBuPythonget-up'
st1 = "我要学"
st2 = "Python"
st1 + st2
# '我要学Python'
#这里的st1、st2是我定义的两个字符串
pt1 = 25
pt2 = 11.3
##TypeError:st1+pt1
st1 + str(pt1)
#'我要学25'
st2 = "羞愧难当"
print (st2)
#羞愧难当
st2 = repr("羞愧难当")
print (st2)
#'羞愧难当'
#可以使用repr()函数来强制Python字符类型的表现形式
input()向用户生成一条提示,然后获取用户的输入内容
name = input("请输入你的名字:")
print (name)
#请输入你的名字:帅B
#帅B
#这次因为是执行两行代码,所以不能直接在IDE中打印,需要创建一个Python文件然后保存按F5来执行
#执行后会直接跳出“请输入你的名字:”输入结果后程序获得结果并打印出来“帅B”
Python2.x的input()函数则比较怪异
st8 = '''你好
很高兴认识你
我叫田暴雷
叫我大雷就好
'''
print (st8)
#你好
很高兴认识你
我叫田暴雷
叫我大雷就好
#像这种字符串很长的字符,就可以用三组单引号来定义(赋值)
这里要实现“\”需要多打两个或者三个才阔以 ̄□ ̄||
st = r'老司机带带我!\n我要成大佬!'
print (st)
老司机带带我!\n我要成大佬!
这里就成功的将\\当成一个字符串打印出来了
st7 = r'教练我要学‘开车'
print (st7)
> 教练我要学‘开车
st7 = '教练我要学'开车'
#SyntaxError: invalid syntax
#这里运行报错,加上\\转义符后就可以将'号转为原始字符,如下
st7 = '教练我要学\'开车'
print (st7)
#教练我要学'开车
st7 = "教练我要学\'开车"
print (st7)
#教练我要学'开车
我试了试在一个数组中加一个独立的引号,运行直接报错了(需要再idle执行才可以)
bytes和str除了操作的数据单元不同之外,它们所支持的方法都基本相同,bytes也是不可变序列
将字符串转换成bytes对象有如下三种方式:
. 如果字符串内容都是ASCII字符,可以通过直接在字符串之前添加b前缀来构建字节串值
```python
st7 = b‘你好‘
print (type(st7))
#SyntaxError: bytes can only contain ASCII literal characters.
st7 = b'abc'
print (type(st7))
```
.调用butes()函数(其实是bytes的构造方法)将字符串按指定的方式转化为字节串或转化为指定类型的字节串,默认使用UTF-8字符集
st6 = "我爱我家".encode()
print (st6)
> b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'
.调用字符串本身的encode()方法将字符串按指定字符集转化成字节串,默认使用UTF-8字符集
st6 = bytes("我爱我家","UTF-8")
print (st6)
#b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'
#这种方式要加字符集否则Python会直接报错,不能正常运行
2.调用bytes对象的decode()方法将bytes对象解码成字符串
st9 = b'\xe6\x88\x91\xe7\x88\xb1\xe6\x88\x91\xe5\xae\xb6'
print (st9.decode("UTF-8"))
#我爱我家
原文:https://www.cnblogs.com/mlcg/p/11300728.html