本文主要是介绍python(for语句,嵌套循环,函数),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
for循环和可迭代对象遍历
for循环语法格式:
for 变量 in 可迭代对象(序列,元组,列表…)
循环体语句
range对象
range(start,end,[step])
注:从start到end,不包括end
num_all = 0
for i in range(101):num_all += i
print(num_all)
嵌套循环
for x in range(5):for y in range(5):print(x,end="\t")print() #天然具有换行的效果
九九乘法表
```python
for m in range (1,10):for n in range(1,10):if n<=m:#注意format前面需要一个点,如果不添加end="\t"则天然换行print("{0}*{1}={2}".format(m,n,(m*n)),end = "\t")else:passprint()
break语句
用来结束整个循环
continue 语句
结束本次循环,进行下一次循环
else语句
salarySum = 0
salarys = []
for i in range(4):s = input("请输入一共4名员工的薪资(按q或Q退出 ")if s.upper() == "Q":print("录入完成,退出")breakif float(s)<0:continuesalarys.append(float(s))salarySum += float(s)else:print("已经全部录制完毕")print("录入薪资",salarys)
print("平均薪资{0}".format(salarySum/4))
循环代码优化
- 尽量减少内部必要的计算
- 嵌套循环中,尽量减少内层循环的计算,尽可能向外提
- 局部变量查询比较快,尽量使用局部变量
其他优化手段
- 连接多个字符串,使用join而不是使用+
- 进行元素插入和删除,尽量在类表尾部操作
zip()并行迭代
name = ("高企","流弊","老八")
ages = (2,5,7)
jobs = ("老师","程序员","校长")for i in range(3):print("{0}--{1}--{2}".format(name[i],ages[i],jobs[i]))for name,ages,jobs in zip(name,ages,jobs):print("{0}--{1}--{2}".format(name,ages,jobs))
推导式创建序列
列表推导式
语法:
[表达式 for item in 可迭代对象 ]
y = [x*2 for x in range(1,5)]
print(y)
字典推导式
语法:
[key:value for 表达式 in 可迭代对象]
my_text = "sdf adfadfaef addf wee"
char_count = {c:my_text.count(c) for c in my_text}
print(char_count)
生成器推导式
例题:
import turtle
t = turtle.Pen()
my_colors = ("red","yellow","green","black")
t.width(4)
t.speed(0)
for i in range(10):t.penup()t.goto(0,-i*10)t.pendown()t.color(my_colors[i%len(my_colors)])t.circle(15+i*10)
turtle.done()
函数用法和底层分析
函数的定义和调用
定义:def 函数名(参数列表)
调用: 函数名() ,记得加上括号
返回值的基本用法
return:1. 返回值 2. 结束函数执行
注:
- 函数中有return,则结束函数执行并返回值
- 没有return,则返回None
- 返回多个值可以用列表,元组,字典,集合存起来
def test03(x,y,z):return[x*10,y*10,z*10]
print(test03(1,2,4))
这篇关于python(for语句,嵌套循环,函数)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!