Python学习之==>内置函数、列表生成式、三元表达式
一、内置函数
所谓内置函数就是Python自带的函数
print(all([0,2,3,4])) #判断可迭代的对象里面的值是否都为真
print(any([0,1,2,3,4])) #判断可迭代的对象里面的值是否有一个为真
print(bin(10)) #十进制转二进制(0b1010:ob代表二进制,10的二进制是1010)
print(bool('a')) #把一个对象转换成布尔类型(非空即真,非0即真)
print(callable('aa')) #判断传入的对象是否可调用
print(chr(66)) #取数字对应的ascii
print(ord('B')) #取字符串对应的ascii码
print(dict(a=1,b=2)) #转换字典
print(dir('a')) #打印传入对象的可调用方法
print(eval('1+1')) #执行python代码,只能执行简单的,定义数据类型和运算
print(exec('def a():pass')) #执行python代码
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]))
print(frozenset({1,2,3,3})) #定义一个不可修改的集合
print(globals()) #返回程序内所有的变量,返回的是一个字典
print(locals()) #返回局部变量
print(hash('aaa'))#把一个字符串哈希成一个数字
print(hex(111)) #数字转成16进制
print(max(111,12))#取最大值
print(min(111,12))#取最小值
print(abs(-10)) #取绝对值
print(oct(111)) #把数字转换成8进制
print(round(1.215,2))#取几位小数
print(sorted([2,31,34,6,1,23,4]))#排序
内置函数zip
把多个list组合到一起变成一个二维数组
1 list1 = ['a', 'b', 'c', 'd', 'f', 'g']
2 list2 = [1, 2, 3]
3 list3 = ['!', '#', '%', '*']
4 list4 = ['A', 'B', 'C', 'D', 'E']
5 # zip是把多个list组合到一起变成一个二维数组
6 print(list(zip(list1, list2, list3, list4)))
7 # 如果list长度不一样,则循环次数以元素少的list为准
8 for a, b, c, d in zip(list1, list2, list3, list4):
9 print(a, b, c, d)
内置函数map
自动循环调用函数
1 def my(num):
2 return str(num)
3 lis = [1,2,3,4,5,6,7,8,9]
4 # 将lis中的每个元素作为函数my的入参调用函数
5 res = list(map(my,lis)) # 将对象强制转换成list
6 print(res)
7 # 和以下代码功能一样
8 new_lis = []
9 for i in lis:
10 new_lis.append(my(i))
11 print(new_lis)
内置函数filter
同样是循环调用函数
1 def even(num):
2 if num % 2 == 0:
3 return True
4 else:
5 return False
6 lis = [1, 2, 3, 4, 5, 6, 7, 8, 9]
7 # filter只保留结果返回为真的list中的元素
8 res1 = list(filter(even, lis))
9 # 函数返回什么就保存什么
10 res2 = list(map(even, lis))
11 print(res1)
12 print(res2)
二、匿名函数
函数的功能很简单,只需要用一次
res = lambda x:x+1 #冒号后面的是函数的函数体,冒号前面的是返回值
print(res(2))
三、字典排序
dic = {'a':'','b':'','c':''}
res1 = sorted(dic.items(),key=lambda x:x[0]) #根据字典的key排序
res2 = sorted(dic.items(),key=lambda x:x[1]) #根据字典的value排序
print(sorted(dic.items())) # 后面不指定key和value则默认按照key排序
print(res1)
print(res2)
四、列表生成式
k = [i for i in range(1,101,2)] #生成100以内的奇数,放入一个list里面
print(k)
import random
red_num = random.sample(range(1,34),6)
new_num = []
new_num = [str(num).zfill(2) for num in red_num]
# 以下代码和上面的列表生成式效果一样
for num in red_num:
tmp = str(num).zfill(2)
new_num.append(tmp)
五、三元表达式
a = 5
b = 4
c = a if a > b else b
# 相当于:
if a > b:
c = a
else:
c = b
Python学习之==>内置函数、列表生成式、三元表达式的更多相关文章
- python学习交流 - 内置函数使用方法和应用举例
内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函 ...
- Python学习(5)——内置函数
常用字符串内置函数 1)str.count() //返回该字符串中某个子串出现的次数 2)str.find() //返回某个子串出现在该字符串的起始位置 3)str.lower() //将该字符串全部 ...
- python学习之--内置函数:
Python内置函数: Python内置了很多有用的函数,我们可以直接调用.要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数. 1. 内置函数调用之--abs()函数: ...
- python学习总结----内置函数及数据持久化
抽象基类(了解) - 说明: - 抽象基类就是为了统一接口而存在的 - 它不能进行实例化 - 继承自抽象类的子类必须实现抽象基类的抽象方法 - 示例: from abc import ABC, abs ...
- python学习-31 内置函数
内置函数 1.abs() 绝对值 2.all() 判断列表里的所有值的布尔值(如果迭代列表里的每个值后都是True 则返回True) '])) 运行结果: True Process finis ...
- python学习-34 内置函数的补充
其他内置函数 1.ord() 与chr()相反 2.pow() print(pow(3,3)) # 相当于3**3 print(pow(3,3,2)) # 相当于3*3%2 运行结果: 27 1 ...
- python学习之- 内置函数
内置方法:1:abs():取绝对值2:all():当可迭代对象里所有均为真时结果为真. all([1,2,3])3:any():当可迭代对象里任意一个数据为真结果即为真.any([0,1,2])4:a ...
- xpinyin-函数返回多个值-lambda匿名函数-列表生成式-三元表达式
import xpinyinp=xpinyin.Pinyin() #实例化print(p.get_pinyin('小白','')) 函数返回多个值:1.函数如果返回多个值的话,它会把这几个值放到一个元 ...
- python学习(内置函数)
1.id()返回对象的内存地址 a = 1 print id(a) print id(1) 2.int()用于将数据类型转换为整型 a = " b = 2 print int(a) + b ...
随机推荐
- celery源码解读
Celery启动的入口: 文件:Celery/bin/celery.py 看下main函数做了什么事 可以看到主要做了几个事根据-P参数判断是否需要打patch,如果是gevent或者eventlet ...
- jmeter之Ramp-up Period(in seconds)
[1]决定多长时间启动所有线程.如果使用10个线程,ramp-up period是100秒,那么JMeter用100秒使所有10个线程启动并运行.每个线程会在上一个线程启动后10秒(100/10)启动 ...
- 如何使用Beyond Compare比较两个文件夹的差异
很多时候,我们需要比较两个文件或者两个文件夹的差异性,看看是哪里不同.这时候就需要一款比较软件来处理,Beyond Compare就是其中一款非常好用的版本比较工具,下面简单介绍一下Beyond Co ...
- CSS3书写规范
css样式的书写顺序: 1.位置属性(position, top, right, z-index, display, float等) 2.大小(width, height, padding, marg ...
- python tkinter菜单
python3中,Tkinter编写菜单界面案例 from tkinter import * top=Tk() top.wm_title("菜单") top.geometry(&q ...
- 使用tensorflow训练word2vec
from http://blog.csdn.net/wangyangzhizhou/article/details/77530479?locationNum=1&fps=1 使用了tensor ...
- jquery 判断文字是否超出div出现三个点的省略号
现在有个需求,就是一个div宽度固定,但是文字可能会超出,超出出现三个点省略,然后鼠标划入的时候显示全部,不超出鼠标划入就不显示,这就意味着要判断文字是否超出了 参考代码 <html lang= ...
- 【leetcode】Reach a Number
题目: You are standing at position 0 on an infinite number line. There is a goal at position target. O ...
- TeamViewer的替代品:realVNC
TeamViewer的替代品:realVNC official web: realvnc: https://www.realvnc.com/ steps: 在需要被控制的PC上装上realVNC的服务 ...
- POJ 1182 食物链 (带权并查集 && 向量偏移)
题意 : 中文题就不说题意了…… 分析 : 通过普通并查集的整理归类, 能够单纯地知道某些元素是否在同一个集合内.但是题目不仅只有种类之分, 还有种类之间的关系, 即同类以及吃与被吃, 而且重点是题目 ...