10000条代码Planning⑤

本文介绍了Python中的for-else语句的使用、如何处理代码中的异常情况,以及字符串的字符判断和列表排序方法。作者通过实例演示了如何在编程实践中考虑周全和处理eval输入的安全性。
摘要由CSDN通过智能技术生成
#!Python 3.8.12
#回顾202400226/27练习所学新知识

#技巧:
#1.选择所写的语句,按下tab键,统一向右缩进。
#2.选择所写的语句,按下shift+tab键,统一向左缩进。
#这个技巧方便更改代码,例如突然想起来要try+except

#for+else的使用
#for循环内,如果没有break,那么当循环结束就会执行else部分

l=[]
for i in 'HELLO':
    l.append(i)
else:
    print(l) #['H', 'E', 'L', 'L', 'O']
    
    
#for循环内有break
l=[]
for i in 'HELLO':
    if i!='O':
        l.append(i)
        break
else:
    print(l)  #不执行该语句

print(f'最后结果:{l}') #最后结果:['H']


#描述:输入一个数字n,输出1`n内的所有偶数,以列表的形式输出

#列表数字,以小到大
#append函数,在列表最后插入新元素
#l.append(元素)
try:
    num=eval(input())
    m=[]
    for i in range(1,num+1):
        if i%2:
            continue
        else:
            m.append(i)
    else:
        print(m)
except:
    print('输入有误')
    
    
#列表数字,以大到小
#insert函数,在指定的索引位置插入新元素。
#l.insert(索引位置,元素)
try:
    num=eval(input())
    m=[]
    for i in range(1,num+1):
        if i%2:
            continue
        else:
            m.insert(0,i)
    else:
        print(m)
except:
    print('输入有误')
    

#自定义函数def内,出现return就代表函数结束,break不需要出现
#for + else +def的应用
def main():
    l=[]
    for i in 'Hello':
        if i=='l':
            return print(f'结果1:{l}') #无需break,函数自会停止for循环
        else:
            l.append(i)
    else:
        return print(f'结果2:{l}')

main()  #结果1:['H', 'e']

def main2():
    l=[]
    for i in 'Hello':
        if i=='1':
            return print(f'结果1:{l}') 
        else:
            l.append(i)
    else:                  #for循环没有给打断,所以else语句执行
        return print(f'结果2:{l}')

main2()  #结果2:['H', 'e', 'l', 'l', 'o']


#判断字符串含有中英文、数字、空格的方法

#是否全字符
text='ghijhk'
print(text.isalpha()) #True

#是否全字符
text='ghij活动教案hk'
print(text.isalpha()) #True

#是否为数字
text='123'
print(text.isdigit()) #True

#是否为空格
text=' '
print(text.isspace()) #True


#对列表进行排序
#sorted函数
#sorted(l,key=None,reverse=False)默认参数,直接写sorted(l)即可

ll=[2,56,45,87,1,95]
print(sorted(ll))                           #[1, 2, 45, 56, 87, 95]
print(sorted(ll,key=None,reverse=False))    #[1, 2, 45, 56, 87, 95]
print(sorted(ll,reverse=True))              #[95, 87, 56, 45, 2, 1]

#sorted里的key应用
#在超市水果价格,挑选最划算的水果

lm=[('苹果',10),('榴莲',100),('橘子',5),('香蕉',3),]

def jiage(x:list)->int:   #用什么作为key来比较
    return x[1]

a=sorted(lm,key=jiage)[0]
print(a) #('香蕉', 3)

如果你真的想当程序员那么就先写一万条代码。……《向上生长》


28号复习写下74条代码

目标:10000条

剩余:9757条

总结:

越学习越觉得,代码很严谨的情况下,很简单的命题,你都要考虑周全。

见到 eval(input()) 条件反射就是需要 try+except 一下。

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值