加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python中的基础坑

发布时间:2020-12-20 10:51:01 所属栏目:Python 来源:网络整理
导读:v = [lambda :x for x in range(10)]print(v) #[lambda :x,lambda :x....]10个匿名函数print(v[0]) #lambda :xprint(v[0]()) #9 v = (lambda :x for x in range(10))print(v)#生成器# print(v[0]) #报错:生成器不能索引取值# print(v[0]()) #报错:生成器不
v = [lambda :x  for x in range(10)]
print(v)    #[lambda :x,lambda :x....]10个匿名函数
print(v[0]) #lambda :x
print(v[0]())   #9

  

v = (lambda :x for x in range(10))
print(v)		#生成器
# print(v[0])	    #报错:生成器不能索引取值
# print(v[0]())   #报错:生成器不能索引取值
print(next(v))	#lambda :x
print(next(v)()) #1

  

def extendList(val,list=[]):
    list.append(val)
    return list


list1 = extendList(10)
list2 = extendList(123,[])
list3 = extendList(‘a‘)

print(‘list1=%s‘ % list1)  # list1=[10,‘a‘]
print(‘list2=%s‘ % list2)  # list2=[123]
print(‘list3=%s‘ % list3)  # list3=[10,‘a‘]

  

def add(a,b):
    return a + b


def test():
    for i in range(4):
        yield i


g = test()  # 生成器

for n in [2,10]:
    g = (add(n,i) for i in g)# 生成器
    
print(list(g))#[20,21,22,13]
#n=2:
        # 循环体执行时i对应的值 (0,1,2,3)
        # 循环体执行之后:g类似于[add(n,0),add(n,1),add(n,2),add(n,3)]
    #n=10时:
        # 循环体执行时i 的值 (10,11,12,13)-----对n=2循环之后的g进行取值
        # 循环体执行之后:list(g)=(add(n,10),add(n,11),add(n,12),add(n,13))

  

li = [7,-8,5,4,-2,-5]
print(sorted(li,key=lambda x:(x<0,abs(x))))

  

print(5/2)
print(5.0/2)
print(5/2.0)
print(5.0/2.0)
print(5//2)
print(5.0//2)
print(5//2.0)
print(5.0//2.0)

#python3中   2.5     2.5     2.5     2.5     2   2.0     2.0     2.0
#python2中   2       2.5     2.5     2.5     2   2.0     2.0     2.0

  

dic={x:y for x in [‘Male‘,‘Female‘] for y in [‘Red‘,‘Black‘]}
print(dic)
# {‘Male‘:‘Black‘,‘Female‘:‘Black‘}

li=[(x,y) for x in [‘Male‘,‘Black‘]]
print(li)
#[(‘Male‘,‘Red‘),(‘Male‘,‘Black‘),(‘Female‘,‘Black‘)]

  

li=[[]]*5           #[[],[],[]]
li[0].append(1)     #[[1],[1],[1]]
li[3].append(0)     #[[1,0],[1,0]]
li.append(8)        #[[1,8]
print(li)

  

t=((1,2))*5         #(1,2)
t1=((1,2),)*5       #((1,(1,2))
print(t)
print(t1)

  

for x in range(5):
    pass
print(x)      #4

def f():
    x = 0
    for i in range(5):
        x += i
f()
print(x)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读