重制版 day 09 元组和字符串

day 09 元组和字符串

元组

1)元组是容器型数据类型;将()作为容器的标志,里面多个元素用逗号给隔开:(数据1,数据2,数据3,…)

元组是不可变的(不支持增删改);有序的(支持下标,遍历,切片)

元素没有要求

2)只有一个元素的元组:唯一的元素后面比较加逗号,

3)没有歧义的时候,元组的()可以省略

4)解包:使用多个变量直接获取元组,列表中多个元素

5)元组是不可变的列表

t1=(10,)
print(t1)
t2=10,20,30
x,y,z=t2
print(x,y,z) #  10,20,30

字符串

1)字符串是容器型数据类型(字符串对应的容器只能保存多个文字符号-字符)

将’'或者""作为容器的标志,里面的每一个元素就是字符串中的每一个元素

字符串是不可变的(不支持增删改),有序的(支持下标,遍历,切片)

字符串不可变,所有的可变操作都是创建新的字符串完成的

字符串分为普通字符和转义字符

转义字符:由\和另外一个或者多个符号一起组合而成,具有特殊意义或者特殊功能的字符串

转义字符是固定的

常见的转义字符:

\n-换行

\t-制表符,4个空格

\'-表示一个普通的单引号

\"-表示一个普通的双引号

\\-表示一个普通的反斜杠

利用’',"的切换完成字符串中带"的操作

str='\n\m'
print(str)
str='It\'s me!'
print(str)
str="I say:'see you'"
print(str)
str='1"30\''
print(str)

2.r字符串-在字符串引号前加上r或R,可以让字符串中所有的转义字符功能失效

常用于地址的引用

补充:常见进制表示

10进制:0-9组成的数字

二进制-0和1组成的数字,用0b表示

8进制-用0-7组成的数字,用0o表示

16进制-用0-9和a-f组成的数字,用0x表示

字符编码

简单来说就是存储文本信息的数字

1)ASCII码表:共有128个字符,包含常见的英文,数字,和字母

0-9:48-57

A-Z:65-90

a-z:97-122

2)uniconde编码表:万国码,统一码

中文编码:4e00-9fa5 (十六进制)

编码值的应用:

1)chr(编码值)-获取指定编码值对应的字符

2)ord(字符)-获取指定字符的编码值(10进制返回值)

# 案例:将小写字母转换成大写字母
# A-65 a -97 32
# B-66 b-98  32
c1='m'
print(chr(ord(c1)-32))  # M

3)编码字符表示方法:直接提供字符,也可以提供编码字符、\u+4位16进制编码值

# 案例:判断保存的字符是否是中文
c2='n'
if '一'<=c2<='\u9fa5':
    print(c2,'是')
else:
    print(c2,'不是')

两个字符串比较大小,比较的是第一对不相等的字符的编码值的大小

print('asd'>'Asd')  # True

字符串的基本操作

1.查:下标,遍历,切片都可以

massage='hello python!'
print(massage[0],massage[-1],massage[4]) # h ! o

print(massage[1:-1:2]) # el yhn
print(massage[1:4:-1]) # ''
print(massage[2:]) # llo python!
print('-------------------------------分割线----------------------------------------')
for i in massage:
    print(i)
print('-------------------------------分割线----------------------------------------')
for i in range(len(massage)):
    print(i,massage[i])

2.+,*

字符串1+字符串2 --将两个字符串合并,产生新的字符串

字符串*N -重复N次产生新的字符串

3.in和not in

字符串1 in 字符串2 -判断字符串2中是否包含字符串1

str2='hello'
print('a'in str2)  # F
print('h'in str2) # T
print('he'in str2) # T
print('hl'in str2) # F
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值