Python 语句进阶 学习笔记

本贴最后更新于 2310 天前,其中的信息可能已经时移世易

序列解包(可选解包)

  • 多个赋值操作同时进行(注意,解包的序列中的元素必须和赋值号左边的变量数量一致)

    x,y,z = (1,2,3) print(x) : 1 print(y) : 2 print(z) : 3 x = 1; y = 2; x,y = y,x; print(x) : 2 print(y) : 1 values = 1,2,3 print(values) : (1,2,3) x,y,z = values; print(x) : 1 print(y) : 2 print(z) : 3

链式赋值

  • 将同一个值给多个变量

    x=y=somefunction(); 等价于: y = somefuncation(); x = y 不等价: x = somefuncation();y=somefuncation()

语句块

  • 语句块并非一种语句

  • 语句块是一组语言,在代码前放置空格来缩进语句即可创建语句块

  • 在 python 中用:来标识语句块的开始

    if True : print("hello");

条件

  • 描述

    if 条件: 语句块 elif: 语句块 else: 语句块 elif 表示 else if and 表示且 or 表示 或 while 条件: 语句块 for something in XXXX: 语句块
  • 即表示对 XXXX 中的每一个元素,执行某些语句块,XXXX 可以是列表,字典,元组,迭代器等等。

断言 assert

  • 后面语句为真,否则出现 AssertionError
  • 用来检查一个条件,如果它为真,就不做任何事。如果它为假,则会抛出 AssertError 并且包含错误信息。

pass

  • pass 表示这里什么都没有,不执行任何操作

如果你的程序还有未完成的函数和类等,你可以先添加一些注释,然后代码部分仅仅写一个 pass,这样程序可以运行不会报错,而后期你可以继续完善你的程序

del

  • del 删除的只是引用和名称,并不删除值,也就是说,Python 会自动管理内存,负责内存的回收,这也是 Python 运行效率较低的一个原因吧

range 语句 range(start,end)

  • Range 函数的工作方式类似于分片。

  • 包含 start,不包含 end。

  • 默认 start = 0;

    for i in range(10): print(i) 0 1 2 3 4 5 6 7 8 9
  • xrange 类似于 range,range 是一次性创建整个序列,xrange 一次性创建一个,迭代大量数据时首选 xrange

zip : 压缩函数,将两个序列压缩成一个

x= ['a','b']; y = ['1','2','3']; z = zip(x,y) for v in z: print(v) ('a', '1') ('b', '2') 可以看到,z只存最短的序列的数量值

编号迭代 enumerate

s1 = "hello" for index , s in enumerate(s1): print("index is %d and value is %s"%(index,s)) index is 0 and value is h index is 1 and value is e index is 2 and value is l index is 3 and value is l index is 4 and value is o

exec :动态地执行语句中的代码

exec("print('hello')") hello

eval 计算 python 表达式

  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 674 回帖
  • 笔记

    好记性不如烂笔头。

    310 引用 • 794 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...