一.基本知识点速览:
tip:由于之前学过c和c++,所以知识点部分就大致过一遍。
1.程序的控制结构:
(1)条件语句:
1.语法格式:if condition:
statement...
elif condition:
statement...
else
statement...
2.要注意通过空格缩进来确定层次间的关系
3.相比于多个if单分支语句,if-elif多分支语句的优势是:避免部分程序的多余运行,提高项目的效率
4.if not表示判断条件的逻辑非作为实际的判断条件
(2).循环语句while
1.语法格式:while 条件:
循环体
2.要注意通过空格缩进来确定层次间的关系
3.while的else扩展模式:值得注意的是,只有当while相应的条件不为真时才能执行else语句中的内容。用break语句跳出循环后,循环的条件仍为真,此时else语句不会被执行。因此else常用于检测循环的退出状况。
(3)for
1.python中的for不同于c,在python中for用于迭代遍历序列中的元素,因此for在python中也叫遍历循环。通俗来讲,for循环就是将“待办事项”逐个完成的循环机制。for与while在逻辑上的区别如下图:
2.语法格式
for 变量名 in 序列:
执行语句1
执行语句2 ...
3.要注意通过空格缩进来确定层次间的关系
2.函数和代码复用:
1.自定义函数语句格式:
def function_name(parameters):
"""
Docstring: 函数的描述信息可以写在这里,也就是对函数进行注释。
"""
# 函数体代码
return value
2.函数没有return时也存在返回值,无return的函数,实际上就是返回“None”这个字面量(类似c中的null)
3.global:可在函数内部修改全局变量
二.补充知识点:
1.python中print函数的格式化输出:
(1)使用.format()方法
在字符串中使用{}占位符,然后使用.format()方法进行替换:
name = "Tom"
age = 18
print('My name is {}, and I am {} years old.'.format(name, age))
# 输出结果:My name is Tom, and I am 18 years old.
(2)使用f-string方式
在字符串前加上字母"f",然后使用{}占位符进行替换:
name = "Tom"
age = 18
print(f'My name is {name}, and I am {age} years old.')
# 输出结果:My name is Tom, and I am 18 years old.
(3)%格式化输出
name = "Tom"
print("My name is %s"%name)
#输出结果: My name is Tom
关于使用print函数要注意的点:
print(*objects,sep=' ',end='\n',file=sys.stdout,flush=False)
print函数允许同时输出多个对象,此时这多个对象需要用逗号间隔,多个对象之间使用空格隔开。print()函数在输出完成后,在默认情况下会进行换行,如果print()函数没有输出的参数,那么print()函数会直接输出一个换行。
tip:print(” “,a),当a处填入的数值为赋值时,则逆序对数据进行处理。
2.\t的效果等同于键盘上的tap键,可让多行字符串换行。
3.input函数的基本要点:
a=input()
a=input("小明今年的年龄为: ")
默认情况下,input输入的数据类型时字符串型。
4.eval函数:
返回传入字符的表达式的结果。即将字符串当成有效的表达式,进行运算、求值并返回结果。
从某种意义上说,eval就是实现list、dict、tuple和 str 之间的相互转换。
作用:eval()函数又称为评估函数,作用是去掉参数中最外层引号并执行剩余语句
具体实例:
a=10;
print(eval("a+1"))
#输出结果为:11
三.项目实践:
(1).九九乘法表:
for i in range(1, 10):
for j in range(1, i+1):
print(f'{j}x{i}={i*j}\t', end='')
print()
(2)打印输出n以内的全部大于0的偶数(不包含n)
num=int(input("请输入一个整数"))
while num>0:
if num%2 == 0:
print(num)
num -= 1