Python基础案例练习2

Python基础案例练习

一、map()的应用

def f(x, y):
      result = 1
      for i in range(1, y - x):
            result *= i
      return result
x = list(map(f, (0, 2, 4), range(5, 8)))
print(x)

运行结果:[24, 6, 2]

首先要知道什么是map()函数
第一个值:x取0,y取5,运行f函数,得到的是1*2*3*4=24;
第二个值:x取2,y取6,运行f函数,得到的是1*2*3=6;
第三个值:x取4,y取7,运行f函数,得到的是1*2=2;
所以运行结果:[24, 6, 2]

二、for in的应用

print([(x, y) for x in [1, 2, 3] if x!=2 for y in [3, 1, 4, 2] if y!=x])

运行结果:[(1, 3), (1, 4), (1, 2), (3, 1), (3, 4), (3, 2)]

要想成功输出需满足的条件:x取1或2或3,且x!=2;y取3或1或4或2,且y!=x

三、yield的应用

def f():
      a, b = 1, 2
      while True:
             yield a
             a, b = b, a * b
 a = f()
 for i in range(7):
       print(a.__next__(), end = ',')

四、编写程序,生成包含20个随机整数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果。

import random
v=[random.randint(0,100) for i in range(20)]
print(v)
a=v[0:10]
a.sort()
b=v[10:20]
b.sort()
b.reverse()
print(a)
print(b)
c=a+b
print(c)

五、形参,实参

def demo():

      x = 5

x = 3

demo()

print(x)

输出结果:3
在绝大多数情况下,在函数内部直接修改形参的值不会影响实参,x=5为局部变量,只有在demo()内部输出x才为5

更新中……

发布了113 篇原创文章 · 获赞 404 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/zag666/article/details/105163674
今日推荐