学习笔记(04):21天通关Python(视频课)-字符串入门

立即学习:https://edu.csdn.net/course/play/24797/282155?utm_source=blogtoedu

字符串入门

1、字符串的基础用法

几乎包含任何字符串,英文、中文都可以

既杺用单引号,也可以用双引号

如果引号本身就是字符串怎么办?

办法1:用不同的此号把它括起来

>>> a="hello' python"
>>> print(a)
hello' python

 

方法2:对引号进行转义(用反斜杠来转义)

>>> a='hello\' python'
>>> print(a)
hello' python

 

2、字符串的拼接 (重点)

方法1:使用‘“+”号将两个字符串拼接在一起

>>> a='我今年'
>>> b='35岁'

>>> c=a+b

>>> print(c)
我今年35岁

 

方法2:数值必须先用str()或repr()函数转换才能拼接,repr()函数转换后的字符串用引号括起来,让人更直观的看到是字符串

>>> a=100.005  #这是数值
>>> print(a)
100.005  #这个是数值
>>> print(str(a))
100.005   #这个是字符串(无引号,不容易看出来是字符串,还是数值)
>>> print(repr(a))
100.005   #这个扔然是数值(因为没有转换成字符串)

>>> print(repr(str(a)))
'100.005' #这个是字符串(用此号括起来的)

 

input()向用户生成一条提示,然后获取用户输入内容

>>> a=input('请输入你的年龄:')
请输入你的年龄: #手工僌 35
>>> print(repr(a))
'35'


3、长字符串与原始字符串(重点)

(1)、长字符串使用三个引号(单、双 都行)括起来

>>> longstr='''haha!
你在干什么?
我在写代码
'''
>>> print(longstr)
haha!
你在干什么?
我在写代码

 

或用转义字符(、)对换行符转义,如下:

>>> longstr='haha!\n 你在干什么?\n我在写代码'
>>> print(longstr)
haha!
 你在干什么?
我在写代码
>>>

 

(2)、原始字符串

原始字符串以r开头,原始字符串不会把反斜杠当成特殊字符。

如果原始字符串中包含引号,程序同样需要对引号进行转义,否则Pthon同样无法对字符串的引号精确配对。

   在原始字符串中,除引号之外的其他所有字符串,都原原本本地保留。如下:

>>> a='ALGGJG\FDJFG,/"OEITI0987'
>>> print(a)
ALGGJG\FDJFG,/"OEITI0987

>>> a='ALGGJG\FDJFG,/'OEITI0987'
SyntaxError: invalid syntax
>>> print(a)
ALGGJG\FDJFG,/"OEITI0987

>>> a='ALGGJG\FDJFG,/\'OEITI0987'
>>> print(a)
ALGGJG\FDJFG,/'OEITI0987
>>> 

 

4、字节与字符串(重点/难点)

字节串(bytes)是同多个字节组成

字符串(str)是由多个字符组成

 

字节串与字符串除了操作的数据单元不同外,其他所有的操作方法基本相同,字节串也是不可变序列。

字符串与字节串之间可以相互转换:

将bytes转为str,有三种方式:

(1)、如果字符串的内容都是ASCII字符,可以通过直接在字符串之前 添加b来构建字节串的值。

>>> a=b'ABc'

>>> print(a)
b'ABc'
>>> print(type(a))
<class 'bytes'>

 

>>> a='ABc'
>>> print(type(a))
<class 'str'>

 

 

(2)使用bytees()函数转换,默认使用UTF-8字符集;

>>> a=bytes("我爱你中国!","UTF-8")
>>> print(a)
b''\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0\xe4\xb8\xad\xe5\x9b\xbd\xef\xbc\x81'
>>> print(type(a))
 <class 'bytes'>

 

(3)调用字符串本身的encode()方法

>>> a='我爱你中国!'.encode()
>>> print(a)
b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0\xe4\xb8\xad\xe5\x9b\xbd\xef\xbc\x81'
>>> 

 

(4)将字节串转为字符串(bytes --> str ):

调用bytes对象的decode()方法将bytes对句解码成字符串 进行转换,如下:

 

>>> a=b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0\xe4\xb8\xad\xe5\x9b\xbd\xef\xbc\x81'
      
>>> print(a.decode("UTF-8"))
      
我爱你中国!

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值