Python 学习笔记

本文介绍了Python编程中的一些独特特性,如列表切片允许负数和越界操作,for-else循环结构,pass语句的空操作,以及新引入的match语句,它类似switch,支持多情况匹配。同时,还讨论了Python函数参数的多样形式。
摘要由CSDN通过智能技术生成

摘  要

记录 Python 学习过程中不同于一般语言的特性。

关键词: python

主要教程

切片

  • 对列表的索引支持负数,但不可以越界,而切片参数则可以为负数,也可以越界。
squares = [1, 4, 9, 16, 25]
print("squares:", squares)

print(squares[0])
print(squares[-1])

#bad: 5 out of range, try uncomment it and run
#print(squares[5])

print(squares[0:5])
print(squares[0:-1])

循环

  • for-else 语法的 else 分支在 for 循环正常结束时(即没有 break)触发
for i in range(10):
	if i == 5:
		print("break for")
		break
else:
	print("for-else brach executed")
  • pass 语句: 语法上需要一个语句,但程序不实际执行任何动作时,可以使用该语句。
def funA():
	pass
  • match 语句: 与其他语言的 switch 相似,但可以在 case 字句中使用 | 符号匹配多个,使用 _ 代表 default 分支,case 分支还可以在后面加 if 条件语句。
match status:
	case 401 | 403 | 404:
    return "Not allowed"
# point is an (x, y) tuple
match point:
    case (0, 0):
        print("Origin")
    case (0, y):
        print(f"Y={y}")
    case (x, 0):
        print(f"X={x}")
    case (x, y) if x == y:
        print(f"X=Y={x}")
    case (x, y):
        print(f"X={x}, Y={y}")
    case _:
        raise ValueError("Not a point")

函数

  • 在 python 的函数参数中存在位置参数,关键值参数,元组参数,字典参数。
  • 参数调用方式又存在 3 种约束:仅按位置,按位置或关键字,仅按关键字。
  • 关键值参数必须在位置参数之后,关键值参数之间的顺序无关紧要。
  • lambda 关键字用于创建匿名函数,匿名函数只能是单个表达式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值