Python刷题——第2周

这周刷题情况:
在这里插入图片描述
知识点:
1.关于列表
利用函数 range(),能够创建任何需要的数字列表, 例如, 下面的代码创建了一个列表, 它包含前 10 个整数( 即 1~10 ) 的立方:

cubes=[]
for v in range(1,11):
    cube=v**3
    cubes.append(cube)
print(cubes)

因为逻辑清晰易懂,所以去除临时变量 cube,让代码变得更简洁:

cubes=[]
for v in range(1,11):
    cubes.append(v**3)
print(cubes)

有时候, 使用临时变量会让代码更易读;而有的时候, 使用临时变量只会让代码无谓地变长。

还有一种更简洁的写法,叫做列表解析。它会将 for 循环和创建新元素的代码合并为一行, 并且自动附加新元素。它的语法是, 首先指定一个描述性的列表名, 如 cubes; 然后, 指定一个左方括号, 并定义一个表达式, 用于生成你要存储到列表中的值(如 v**3) 。 接下来, 编写一个 for 循环, 用于给表达式提供值, 再加上右方括号 。 注意: 这里的 for 语句末尾没有冒号 。

cubes=[v**3 for v in range(1,11)]
print(cubes)

2.在输入三角形的几何特征前(诸多题目也是如此),要先判断其输入值的合理性,很多时候我都会忘了这一点。差不多完成之后再来修改,所以得加强这方面意识。
在此题就用if函数判断

if(a+b<=c or a+c<=b or b+c<=a):
    print("These sides do not correspond to a valid triangle")
else:	
//......(接下来照套路来)

3.关于逆序(反转)
想到的就是循环和切片

str1 = [1, 2, 3, 4]
str2 = []

for i in str1:
    str2.insert(0, i)

print(str2)//循环


aList = [1, 2, 3]

print(aList[::-1])	# 输出为:[3, 2, 1]//切片法

还查阅到可内建函数,用reverse、reversed、sorted等达到目的。

4.关于查找指定字符
1.find()

find()检测某个子串是否包含在这个字符串中,如果在返回这个子串开始位置的下标,否则返回 -1

字符串序列.find(子串,开始位置的下标,结束位置的下标)

注意:开始和结束位置的下标可以省略,表示在整个字符串序列中查找。

2.index()

index() 检测某个子串是否包含在这个字符串中,如果在返回这个子串开始位置的下标,否则则报出异常。

字符串序列.index(子串,开始位置的下标,结束位置的下标)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值