从零开始的python自学之旅(四)

从零开始的python自学之旅(四)

Day 4

  • else
    示例:

    for i in range(3):
        key=input('请输入密码')
        if key=='8888':
            print('密码正确')
            break
        else:
            print('密码错误')
    else:
        print('错误3次,已被锁死')
    

    这里的else可以还用于while语句,只要while语句中未执行break,就会执行else语句的内容。

    在测试中,发现了几个值得注意的点:

    print(2,'\n')
    print(5)	#2与5之间隔了一行
    
    print(2)
    print()
    print(5)	#2与5之间隔了一行
    
    print(2)
    print('\n')
    print(5)	#2与5之间隔了两行
    

    要想实现不换行,就需要添加end=
    示例:

    for i in range(1,10):
    for j in range(1,i+1):
        print(i*j,end='\t')
    print()
    

  • 列表
    1.索引
    列表除了像c语言可以正向索引(0表示第一个元素),也能依据负数进行反向索引(-1表示最后一个元素),示例如下:

    lst=['hello','world',98]
    print(lst[0],lst[-3]) #打印出来都是hello
    

    如果想返回列表中某个元素的索引,以上述的hello为例:print(lst.index('hello')即可。另一种写法也呈现在这里:print(lst.index('world',1,3)) #表示在1,2索引之间搜索world的索引
    2.获取列表的元素

    lst=[10,20,30,40,50,60,70,80]
    print(lst[1:6:1])	#将会打印出[20, 30, 40, 50, 60]
    print(lst[:6:2])	#打印出[10,30,50]
    print(lst[1::2])	#打印出[20,40,60,80]
    print(lst[::-1])	#逆序打印出[80,70,60....10]
    print(lst[6::-1])	#打印出[70,60,50,40...10]
    print(lst[6:0:-1])  # 逆序打印出[80,70,60....20]
    lst2=lst[1:6:1]		#获得list的部分指定元素
    

    3.列表元素的增加删减等操作
    增加操作:
    3.1 append()在末尾添加一个元素
    3.2 extend()在末尾添加至少一个元素
    3.3 insert()在列表的任意位置插入一个元素

    3.1 切片操作 在列表的任意位置插入至少一个元素,并覆盖掉位置后面所有的元素
    下述为append()

    lst1=[10,20,30]
    lst1.append(100)
    print(lst1)	#[10,20,30,100]
    lst2=[40,50,60]
    lst1.append(lst2)
    print(lst1)			#打印出来的结果很诡异:[10, 20, 30, 100, [40, 50, 60]]
    

    3.2 为了避免打印出上述的诡异数字,采用extend()

    lst1=[10,20,30]
    lst1.append(100)
    print(lst1)	#[10,20,30,100]
    lst2=[40,50,60]
    lst1.extend(lst2)
    print(lst1)			#打印出来的结果是[10, 20, 30, 100, 40, 50, 60]
    

    3.3 继续介绍insert()

    lst=[10,20,30]
    lst.insert(1,90)
    print(lst)		#打印出来的结果是[10,90,20,30]
    

    3.4 接着是切片

    lst=[10,20,30,40]
    lst2=[True,False]
    lst[1:]=lst2	#若改为lst[1:2] = lst2则与insert()无区别
    print(lst)		#结果为[10, True, False]
    
    

    删除操作“:
    3.5 remove()删除列表中的一个指定元素,若该元素有多个,则只删除第一个遇到的元素,不能移除不存在的函数
    3.6 pop()删除一个指定索引位置上的元素,若不指定索引,则默认删除最后一个元素
    3.7 切片,删除至少一个元素
    3.8 clear()清除列表元素
    3.9 del删除列表对象

    3.5 remove()函数示例

    lst=[10,20,30,40,50,30]
    lst.remove(30) 
    print(lst)	#结果为[10,20,40,50,30]
    

    3.6 pop()函数示例

    lst=[10,20,30,40,50,60]
    lst.pop(1)
    print(lst)	#结果为[10,30,40,50,60]
    lst.pop()
    print(lst)	#结果为[10,30,40,50]
    

    3.7 切片

    lst=[10,20,30,40,50]
    new_list=lst[1:3]
    print(new_list)	#结果为[20, 30]
    #若不想产生新的列表
    lst[1:3]=[]
    print(lst)	#结果为[10,40,50]
    

    3.8和3.9 clear和del

    lst1=[10,20,30]
    lst2=[10,20,30]
    lst1.clear()
    print(lst1)	#结果为[]
    del lst2 #lst2已被删除,无法print(lst2)
    

    修改操作

    lst=[10,20,30]
    lst[1]=50
    print(lst)	#结果为[10,50,30]
    

    排序操作
    3.10 sort()排序不产生新的列表
    3.11 sorted()排序产生新的列表

    3.10 sort

    lst=[10,50,30,440,2,3]
    lst.sort()	
    print(lst)	#结果为[2, 3, 10, 30, 50, 440]
    lst.sort(reverse=True)
    print(lst)	#结果为[440, 50, 30, 10, 3, 2]
    

    3.11 sorted()

    lst=[10,50,30,440,2,3]
    new_lst=sorted(lst)	
    print(new_lst)	#结果为[2, 3, 10, 30, 50, 440]
    NEW_lst=sorted(lst,reverse=True)
    print(NEW_lst)	#结果为[440, 50, 30, 10, 3, 2]
    

    4.列表生成式
    语法格式为:[i*i for i in range(1,10)]

    lst=[i*i for i in range(1,10)]
    print(lst)	#结果为[1, 4, 9, 16, 25, 36, 49, 64, 81]
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值