《笨方法学 Python 3》37.复习各种符号

        现在该复习学过的符号和Python关键字了,而且在这个习题中你还会学到新的一些东西。我在这里所做的就行将所有的Python符号和关键字列出来,这些都是要掌握的重点。

关键字(Keywords):

关键字 描述 示例

and

逻辑:与 True and False == False
not 逻辑:非 not True == False
or 逻辑:或 True or False == True
pass 表示空代码块 del empty(): pass
is 类似于==,判断是否一样 1 is 1 == True
print 打印字符串 print(“Hello World!!!”)
from 从模块中导入特定部分 from X import Y
import 将模块导入当前文件以供使用 import os
del 可以删除变量,字典和列表中特定的索引

可以删除变量,字典和列表中特定的索引

X = [‘a’, ‘b‘, ’c‘, ’d‘, ’e‘]

del x,删除变量x

del X[0],删除列表第1个值

del x[0:2],删除列表第1-2个值,[2]对应的第3个值不删除

if if 条件 if: X;         elif: Y;         else:J
elif else if 条件 if: X;         elif: Y;         else:J
else else 条件 if: X;         elif: Y;         else:J
while while 循环

while X: 

pass

for 针对物件集合的循环

for X in Y: 

pass

in for循环的一部分,也可以x是否在y中的条件判断 for X in Y:  pass  以及  1 in [1] == True
return 返回值并退出函数

def X():         return y

class 定义类 class Person(boject)
global 声明全局变量,通常函数内的变量是局部变量,我们可以在函数内用此函数声明为全局变量

del x:

    x = "全局变量"

    global X

exec 将字符串作为Python脚本运行  exec  ‘print("hello")'
lambda 创建短匿名函数 s = lambda y:  y ** y;   s(3)
assert 断言(确保)某东西为真 assert False,  "Error !"
break 立即停止循环 while True: break
continue 停止当前循环的后续步骤,再做一次循环 while True: continue
raise 出错后引发异常 raise ValueError("No")
try 尝试执行代码,出错后转到except

try: 

pass

except:

pass

except 如果发生异常,运行此处代码

try: 

pass

except ValueError, e:

 print(e)

finally 不管是否发生异常,都运行此处代码

try: 

pass

finally:

pass

with with-as 语句的一部分,将表达式作为一个变量,然后执行代码块;它的作用和上下文管理器有关,可以自动关闭打开的文件或线程,不管在处理文件过程中是否发生异常,都能保证 with 语句执行完毕后已经关闭了打开的文件句柄。

with open('ex15_sample.txt') as X: 

y = X.read()

先将open()作为变量x,然后x.read()

as with-as 语句的一部分,可以理解为重命名,把复杂的表达式重命名简单的字符

with open('ex15_sample.txt') as X: 

y = X.read()

先将open()作为变量x,然后x.read()

yield 暂停函数,返回到调用函数的代码中 def X():  yield Y;  X().next()

数据类型:

        针对每一种数据类型,都举出一些例子来。例如,针对string,你可以举出如何创建字符串,针对number,你可以举出一些数值。

关键字 描述 示例
True 布尔值“真” True or False == True
False 布尔值“假” False and True == False
None 表示“不存在”或者“没有值” x = None
bytes 字节串存储,可能是文本、PNG图片、文件等 x = b ' Hello! '
strings 存储文本信息 x = ' Hello! '
numbers 储存整数 i = 100
Floats 存储十进制数 i = 10.389
lists 存储列表 i = [1, 2, 3, 4, five, sex]
dicts 存储键-值映射 e = { ' x ' : 1 ,  ' y ' : 2 }

字符串转义序列:

        对于字符串转义序列,需要在字符串中应用他们,确保自己清楚地知道它们的功能。

转义符 描述
\\ 反斜杠
\' 单引号
\" 双引号
\a 响铃符
\b 退格符
\f 表单填充符
\n 换行符
\r 回车
\t 制表符(tab)
\v 垂直制表符

老式字符串格式:

        一样的,在字符串中使用它们,了解他们的功能。Python 2 用这些格式化字符事先 f 字符串的功能,把它们作为代替方案试试。

转义符 描述 示例
%d 十进制整数(非浮点数) "%d" % 45 == '45'
%i 和%d 一样 "%i" % 45 == '45'
%o 八进制数 "%o" % 1000 == '1750'
%u 无符号整数 "%u" % -1000 == '-1000'

%x

小写十六进制数 "%x" % 1000 == '3e8'
%X 大写十六进制数 "%X" % 1000 == '3E8'
%e 指数表示,小写e "%e" % 1000 == '1.000000e+03'
%E 指数表示,大写E "%E" % 1000 == '1.000000E+03'
%f 浮点实数 "%f" % 10.34 == '10.340000'
%F 和 %f 一样 "%F" % 10.34 == '10.340000'
%g %f 和%e 中较短的一种 "%g" % 10.34 == '10.34'
%G 和 %g 一样,但是是大写 "%G" % 10.34 == '10.34'
%c 字符格式 "%c” % 34 == ‘ " ’
%r Repr 格式(调式格式) "%r" % int == "<type 'int'>"
%s 字符串格式 "%s there" % 'hi' == 'hi there'
%% 百分号自身 "%g%%" % 10.34 == '10.34%'

运算符:

运算符 描述 示例
+ 2 + 4 = 6
- 2 - 4 = -2
* 2 * 4 = 8
** 2 ** 4 = 16
/ 2 / 4 = 0.5
// 除后向下取整数 2 // 4 = 0(2/4=0.5,0.5下面的整数是0)
% 字符串翻译,或者求余数 2 % 4 = 2 (小除大,余数都是小的数本身)
< 小于 4 < 4 == False
> 大于 4 > 4 == False
<= 小鱼等于 4 <= 4 == True
>= 大于等于 4 >= 4 == True
== 等于 4 == 5 == False
!= 不等于 4 != 5 == True
(  ) 括号 len('hi') == 2
[  ] 方括号 x = [1, 5, 10]
{  } 花括号 { ' x ' :5, ' y ' : 10}
@ 修饰器符 @classmethod
, 逗号 range(0, 10)
: 冒号 def x():
. self.x = 10
= 赋值 x = 10
; 分号 print("hi"); print("there")
+= 加后赋值 x += 2  等于  x = x + 2
-= 减后赋值 x -= 2  等于  x = x - 2
*= 乘后赋值 x *= 2  等于 x = x * 2
/= 除后赋值 x /= 2  等于 x = x / 2
//= 除后舍余并赋值 x //= 2  等于  x = x // 2
%= 求余后赋值 x %= 2  等于  x = x % 2
**= 求幂后赋值 x **= 2  等于 x = x ** 2

       花大约一星期学习这些内容,我们的目的是覆盖所有的符号类型,确认你牢牢记住它们。

阅读代码:

        现在去找一些Python代码阅读一下。你需要自己找代码,然后从中学习一些东西。你学到的知识已经足够让你看懂一些代码了,但你可能还无法理解这些代码的功能。这个习题我会教你如何运用学到的知识理解别人的代码。

        首先把你想要理解的代码打印到纸上。因为眼睛更习惯于接受纸质的东西。

        然后通读打印出来的代码并做好笔记,笔记的内容包括以下几个方面。

        1.  函数以及函数的功能。

        2.  每个变量初始赋值的位置。

        3.  每个在程序的各个部分中多次出现的同名变量。它们以后可能会给你带来麻烦。

        4.  任何不包含 else 子句的 if 语句。它们是正确的吗?

        5.  任何可能没有结束点的 while 循环。

        6.  代码中任何你看不懂的部分。

        接下来你需要通过注释的方式向自己解释代码的含义。解释各个函数的使用方法,多个变量的用途,以及任何其他方面的内容,只要能帮助你理解代码即可。

        最后,在代码中比较难的各个部分,逐行或者逐个函数跟踪变量值。你可以再打印一份出来,在空白处写出要“追踪”的每个变量的值。

        一旦理解了代码的基本功能,回到计算机前,在屏幕上重读一次,看看能不能找到新的问题点。然后继续找新的代码,用上述的方法去阅读理解,知道你不再需要纸质打印为止。

巩固练习:

1.  研究一下什么是“流程图”(flow chart),并学着画一下,

2.  如果在读代码的时候找到了错误,试着把它们改对,并把修改内容发给这段代码的作者。

3.  不用纸质打印时,可以用#注释在程序中加入笔记。

END!!!

猜你喜欢

转载自blog.csdn.net/waitan2018/article/details/82917707