python学习笔记(九)-函数2

交换两个变量的值

a = 2
b = 1
b = 1 a = 2
#方式一:
b,a = a,b #交换两个变量的值
print(a,b)
#方式二:
a = a + b  #3
b = a - b  #2
a = a - b  #3-2

#列表推导式

nums = [0,1,3,4,5,6,7]
new_nums = [x-1 for x in nums]
print(new_nums)

return多个值

函数如果有多个return值,那么会把这几个return的值都放到一个元组里面,然后返回

def hello(a,b,c,d):
   return a,b,c,d

res = hello('ybq','mpp','zhx','lby')
print(res)

函数即变量

def add():
    print('添加商品')
def view():
    print('查看商品')
def delete():
    print('删除商品')

choice  = input('请输入选择 1、2、3、').strip()

menu = {
    '1':add,
    '2':view,
    '3':delete
}
if choice in menu:
    menu[choice]()  #适合用于函数没有参数,或者参数是一样的情况下。
else:
    print('输入错误')

内置函数

#len  type print input str

print(all([1, 2, 3, 4]))  # 判断可迭代的对象里面的值是否都为真
print(any([0, 1, 2, 3, 4]))  # 判断可迭代的对象里面的值是否有一个为真
print(bin(100))  # 十进制转二进制
ejz = bin(100)
print(ejz.replace('0b','')) #二进制都是以0b开头,利用替换去掉0b
print(chr(65))  # 打印数字对应的ascii
print(ord('A'))  # 打印字符串对应的ascii码
print(dir(1))  # 打印传入对象的可调用方法

print(filter(lambda x: x > 5, [12, 3, 12, 2, 1, 2, 35]))  # 把后面的迭代对象根据前面的方法筛选
print(map(lambda x: x > 5, [1, 2, 3, 4, 5, 6])) #根据表达式全部打印出来
#zip
ids= [1,2,3,4,7,8,0,-1]
names=['小黑','小白','小黄','小绿']
names1=['小黑','小白','小黄','小绿']
for id,name,s in zip(ids,names,names1):
    print(id,name,s)

print(sorted('0123450'))#升序
print(sorted(ids,reverse=True))#降序
round(1.987123,5)# 保留几位小数

 

posted @ 2018-01-18 22:39  lincy8888  阅读(171)  评论(0编辑  收藏  举报