Python 序列

列表和字符串的比较:

1,都是序列,有先后顺序

2,列表是可变的,字符串是不可变的

3,列表可以存储任意类型的数,字符串只能存储字符


字符串的文本解析方法:

S.split(sep=None)  将字符串S分隔成字符串列表

s = "welcome to beijing"
words = s.split(" ") 
#["welcome","to","beijing"]

S.join(iterable)

>>>L = ["C:","Windows","system32"]
>>>"\\".join(L)
"C:\\Windows\\system32"

将可迭代对象进行拼接,中间用字符串进行分隔

练习:有字符串“hello”,

生成新字符串“h e l l o”和“h-e-l-l-o”

#hello.py
s = "hello"
print(" ".join(s))
print("-",join(s))

元组  tuple

元组是不可改变的序列,同list一样,元组可以存放任意的值

表示方法:

    用小括号()括起来。

    单个元素括起来后加逗号(,)区别单个对象还是元组

创建空元组

t =()   #空元组

t = tuple() #空元组

创建一个非空元组

t = (20,)   #含有一个元素的元组

t = 10,

t = (1,2,3)

t = 100, 200, 300

t = "hello"

t = ("1",2,"tree")

创建元组的错误示例:

t = (20)

#序列赋值

x , y = 100 ,200 #x 绑定100,y 绑定200

x , y = (100 ,200) #x 绑定100,y 绑定200

x , y = [100 ,200] #x 绑定100,y 绑定200

x , y = "AB"      # 序列赋值


元组的构造(生成)函数

    tuple()  生成一个空元组,等同于()

    tuple(iterable)用可迭代对象生成一个元组

元组的运算:

    算术运算:

    +  +=  *  *=

+ 拼接

+= 拼接后对变量赋值

*  生成重复的元组

*= 生成重复的元组并赋值给变量

例:

x = (1,2,3) + (4,5,6)

x += (7,)

比较运算:

< <= > >= == !=

(1,2,3) < (1,2,4)#True

x = (1,2,3)

y = 1,3,2

x  != y       #True

x == y    #False

y > x   #True


元组的in / not in 运算符

    同字符串和列表的in运算符相同,用于判断一个值是否存在于元组中,存在返回True,不存在返回False

示例:

x = (1,"two",3.1)

2 in x   #False

“2” not  in x #True

索引 index

等同于字符串的索引规则

元组是不能索引赋值的

切片 slice

等同于字符串的切片规则

元组不能切片赋值


可用于序列的函数总结:

len(x)

max(x)

min(x)

sum(x)

any(x)

all(x)

reversed(seq)   返回反向顺序的迭代器

sorted(iterable,key=None,reverse=False)#False默认是升序,True是降序

返回已排序的列表

例:

s = 'ABC'
r = reversed(s)
for x in reversed(s) 
    print(x)
>>>
'C'
'B'
'A'

例:

>>> s = "AMCBJ"
>>> sorted(s)
['A', 'B', 'C', 'J', 'M']

元组的方法:

T.index(v[,begin[,end]])

返回对应元素的索引下标,begin为开始索引,end为结束索引(不包含end)

T.count(x) 返回元组中对应元素个数

练习:

1.输入任意一个字符串或数字,判断是否为回文

12321 回文数

ABCDCBA 回文

2.编写程序,获取一个数值,计算并打印其中每个数字的出现的个数

如:输入:2234524

打印如下:

数字2出现3次

数字3出现1次

数字4出现2次

数字5出现1次

答案:

1:

L= list(input("请输入任意一个字符或数字:"))
if L==L[::-1]:
    print("是回文")
else:
    print("不是回文")
print(L)
2:
s = input("请输入任意一个数值")
for x in range(10):
    if str(x) in s:
        print(x,"出现",s.count(str(x)),"次")




















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值