Python基础教程第五章学习笔记

喜夏-厌秋 提交于 2020-02-06 07:47:11

1.1 print输出多个参数
print可用于打印一个表达式,但实际上,print可以同时打印多个表达式,用逗号分隔即可

>>> print('Name:', 'Kobe')
Name: kobe 
>>> print('Age:', 41)
Age: 41 
>>> name = 'Kobe'
>>> salutation = 'Mr.'
>>> greeting = 'Hello,'
>>> print(greeting, salutation, name)
Hello, Mr. Kobe 

如果字符串变量中没有标点符号 如上变量greeting中没有逗号的话 print输出的时候应这么写:

print(greeting + ',', salutation, name) 

如果需要,可自定义分隔符:

>>> print("Mamba", "Never", "Out", sep=" ")
Mamba Never Out

你还可自定义结束字符串,以替换默认的换行符。例如,如果将结束字符串指定为空字符串,
以后就可继续打印到当前行。

print('Hello,', end='')
print('world!')

上述代码打印Hello, world!。

2.条件和条件语句
2.1 if 语句
if语句,即有条件地执行代码。这意味着如果条件(if和冒号之间的表达式)
为真,就执行后续代码块;如果条件为假,就不执行

name = input('What is your name? ')
if name.endswith('James'):
 print('Hello, Mr. James') 

2.2 else 子句
在前一节的示例中,如果你输入以James结尾的名字,方法name.endswith将返回True,导致
后续代码块执行——打印问候语。如果你愿意,可使用else子句增加一种选择(之所以叫子句是
因为else不是独立的语句,而是if语句的一部分)。

name = input('What is your name?')
if name.endswith('James'):
 print('Hello, Mr. James')
else:
 print('Hello, stranger') 

2.3 elif 子句
要检查多个条件,可使用elif。elif是else if的缩写,由一个if子句和一个else子句组合而
成,也就是包含条件的else子句。

num = int(input('Enter a number: '))
if num > 0:
 print('The number is positive')
elif num < 0:
 print('The number is negative')
else:
 print('The number is zero') 

3 循环语句
3.1 while 循环

x = 1
while x <= 100:
 print(x)
 x += 1

3.2 for 循环

words = ['this', 'is', 'an', 'ex', 'parrot']
for word in words:
 print(word) 

下面的程序打印数1~100:

for number in range(1,101):
 print(number) 

3.3 迭代字典
要遍历字典的所有关键字,可像遍历序列那样使用普通的for语句。

d = {'x': 1, 'y': 2, 'z': 3}
for key in d:
 print(key, 'corresponds to', d[key]) 

3.3 1. break语句
要结束(跳出)循环,可使用break。假设你要找出小于100的最大平方值(整数与自己相乘
的结果),可从100开始向下迭代。找到一个平方值后,无需再迭代,因此直接跳出循环。

from math import sqrt
for n in range(99, 0, -1):
 root = sqrt(n)
 if root == int(root):
 print(n)
 break

4 另外三条语句:pass、del和exec。
4.1 pass语句
pass语句表示什么都不做 如果你在编写代码是 某些代码块还没想好 就可以用pass代替

if name == 'Ralph Auldus Melish':
 print('Welcome!')
elif name == 'Enid':
 # 还未完成……
elif name == 'Bill Gates':
 print('Access Denied')

这些代码不能运行,因为在Python中代码块不能为空。要修复这个问题,只需在中间的代码
块中添加一条pass语句即可。

if name == 'Ralph Auldus Melish':
 print('Welcome!')
elif name == 'Enid':
 # 还未完成……
 pass
elif name == 'Bill Gates':
 print('Access Denied')

4.2 del 删除语句
对于你不再使用的对象 可以使用del删除 就类似于C语言中申请了内存 就得释放内存一样
不用的对象 我们就用del删除 虽然python会自动删除 但是为了养成良好的编程习惯 用完的
对象要记得删除

>>> x = 1
>>> del x
>>> x
Traceback (most recent call last):
 File "<pyshell#255>", line 1, in ?
 x
NameError: name 'x' is not defined 

4.3 使用 exec 和 eval 执行字符串及计算其结果
4.3.1. exec
函数exec将字符串作为代码执行。

>>> exec("print('Hello, world!')")
Hello, world! 

4.3.2. eval
eval是一个类似于exec的内置函数。exec执行一系列Python语句,而eval计算用字符串表示
的Python表达式的值,并返回结果(exec什么都不返回,因为它本身是条语句)。例如,你可使
用如下代码来创建一个Python计算器:

>>> eval(input("Enter an arithmetic expression: "))
Enter an arithmetic expression: 6 + 18 * 2
42 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!