python基础(老师PPT)

slist = ['Alice','2019001', 'Geoscience', '95']
# 使用分号加tab作为分隔符,连接字符串
print(';\t'.join(slist))
# a = X if condition else Z  # condition为True时,赋值为X,否则赋值为Z
a, b = 1, 2
c = 'a > b' if a > b else 'a <= b'
print(c)
c = 5
d = 5
print('c大于d') if c > d else (print('c小于d') if c < d else print('c等于d'))
# 首先对 表达式 c > d 求值
# 为True则执行并返回第一个表达式 print('c大于d'),
# 否则计算(print('c小于d') if c < d else print('c等于d'))
# 括号中的这个表达式又是一个嵌套的if表达式。请注意 c > d的情况已经被排除掉了,因此只需要判断 c < d
# 如果为True,则执行 print('c小于d')。如果为False,那么就只剩下 c==d 的一种情况,执行print('c等于d')
# 一般总是先把包含范围小的条件放在前面,包含范围大的放在后面。还要注意不同的条件之间的嵌套关系。
age = 45
if age > 60:
    print('老年')
elif age > 40:
    print('中年')
elif age > 20:
    print('青年')

assert expression [, arguments]
如果assert后面的表达式为False,则报AssertionError错误,退出程序
这个功能平时一般用不上,但是在测试程序是否有问题的时候很好用

1.for表达式:在一行中实现for循环
2.[表达式 for 循环计数器 in 可迭代对象]
3.3个特点: 在for关键字之前有一个表达式,这个表达式一般需要包含循环计数器,要围绕循环计数器这个变量做点什么 for表达式没有循环体,不需要冒号,for前面的表达式就包含了所有需要做的内容
for表达式前后一般使用方括号扩起来,执行结果是一个列表(这种形式称为列表推导式)


# [表达式 for 循环计数器 in 可迭代对象]
# 用for表达式生成一个 0-9 的列表
a = [i for i in range(10)]
print(a)
# 用for表达式对 0-9 求平方,结果存入列表
a = [i ** 2 for i in range(10)]
print(a)
# for表达式可以和if表达式联合使用
# 找出 0-9 中的偶数,求其平方
a = [i ** 2 for i in range(10) if i % 2 == 0]
print(a)

在这里插入图片描述

如果for表达式用圆括号而不是方括号来括,则for表达式不再生成列表,而是生成一个生成器(generator)

声明一个空的一维列表,要想他变成二维,append的是列表即可。

# 多重循环
x = ['a', 'b', 'c']
y = [2, 3]
z = []
for i in x:
    for j in y:
        z.append([i, j])
print(z)
# 一行中的二重循环,用for表达式实现
[[i, j] for i in x for j in y]

while还能和else一起呀!

count = 0
while count < 5:
    print(count, " is less than 5")
    count = count + 1
else:
    print(count, " is not less than 5")

break 跳出当前循环(跳一重)
continue 忽略循环后面的部分,开始下一轮循环
pass 继续执行,当我不存在,常常用来占坑
在这里插入图片描述

# zip函数
# 把两个列表“打包”成一个zip对象,这样可以使用一个循环同时遍历两个列表
a = ['a', 'b', 'c']
b = [1, 2, 3]
z = zip(a, b)
print(z, type(z))
ziplist = [x for x in z]
for i in ziplist:
    print(i)
# 如果两个列表长度不相等,则以短的为准
a = ['a', 'b', 'c']
c = [0.01, 0.02]
for i in zip(a, c):
    print(i)
# 同时打包压缩3个列表
a = ['a', 'b', 'c']
b = [1, 2, 3]
c = [0.01, 0.02]
for i in zip(a, b, c):
    print(i)

在这里插入图片描述

# 反向排列,reversed函数
# 原始的正向排列
list1 = list(range(10))
print(list1)
# 反向排列
list2 = [i for i in reversed(list1)]
print(list2)
# 原始的列表保持不变
print(list1)

注意区分reversed()和list.reverse()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值