Python学习笔记--2.3 list列表操作(切片)

#切片操作,就是list取值的一种方式
1)
#range循环出来的不是一个list
l=list(range(10)) #要强制转换成list
print(l)

2)
l=list(range(1,11))#生成1~10的list[1,2,3,4,5,6,7,8,9,10]

#如果要从[1,2,3,4,5,6,7,8,9,10]中切片取出一部分:
print(l[0:4])#指定取值范围。顾头不顾尾。从下标0开始取,取到下标4之前,也就是下标0123的内容
print(l[:5])#如果前面没写的话,代表从0开始取的,取到下标为5结束
print(l[4:])#如果后面没写的话,代表从下标4开始取,取到最后
print(l[:])#如果前后面都没写的话,代表取全部
print(l[0:8:2])#从下标0到下标8之前,隔两个取一次
print(l[::2])#最后一个是步长,也就是代表隔几个取一次。

3)
nums=list(range(1,101))
#1 2 3 4 5 6...100
print(nums[1::2])# 生成1~100的偶数
print(nums[::2])# 生成1~100的奇数
print(nums[::-2])# 生成100~1的偶数

#如果最后面的步长是正数的话, 那就从左到右开始取值
#如果后面的步长是负数的话,那么久从右往左开始取值



4)

#切片同样适用于字符串
words='中秋节要上课'
print(words[0]) #取出中
print(words[::-1])#反着显示
for index,w in enumerate(words):
    print('每次打印的',index,w)

5)
s='上海自来水来自海上'
1232321 回文算法,反过来倒过去都一样

for i in range(10):
    s = input('请输入一个字符串:')
    if len(s)<2:
        print('字符串长度必须大于1')
    elif s==s[::-1]:
        print('是回文')
    else:
        print('不是回文')

猜你喜欢

转载自www.cnblogs.com/youyou-luming/p/9563437.html