Python之所以特别的简单就是因为有很多的内置函数是在你的程序"运行之前"就已经帮你运行好了,所以,可以用这个的特性简化很多的步骤.这也是让Python语言变得特别的简单的原因之一.

但是,如果你不会用内置函数的话,就相当的尴尬了!好了,言归正传,下面就来看看这些年,让你魂牵梦绕的Python内置函数(前方高能,请擦亮双眼)

内置函数一共会有68个之多,不要着急的擦汗,下面就来带你刨根问底.看看这些函数一些特殊的用法.

首先就是7个数学运算的函数:

(1)    abs

英文文档

abs(x)

Return the absolute value of a number. The argument may be an integer or a floating point number. If the argument is a complex number, its magnitude is returned

简单的说一点:

1.返回值是一个绝对值,参数却可以是一个整数,浮点数,重点是还可以是复数

补充一点数学知识:很多人不明白复数概念,复数的返回值就是此复数和它共轭复数的乘积的平方根

print(abs(9))
print(abs(-5))
print(abs(10.3333))
print(abs(-2.259))
a=complex(2,3)
>>>(#这样的效果其实就是和(2+3j)一个效果)
print(abs(a))

(2)   divmod

英文文档:

divmod(a, b)

Take two (non complex) numbers as arguments and return a pair of numbers consisting of their quotient and remainder when using integer division. With mixed operand types, the rules for binary arithmetic operators apply. For integers, the result is the same as (a // b, a % b). For floating point numbers the result is (q, a % b), where q is usually math.floor(a / b) but may be 1 less than that. In any case q * b + a % b is very close to a, if a % b is non-zero it has the same sign as b, and 0 <= abs(a % b) < abs(b).

简单再解读重要的点:

1.接收的两个内容必须是数值,但是不能是复数,返回的结果是一个元祖,元祖的第一个值是除下来的商,第二个位置就是余数

>>>divmod(6,3)
(2,0)
>>>divmod(6.0,3.0)
(2.0,0)

另外,还要说一点,其实如果是两个浮点数相除的话,相当于引用了math.floor(5.5/2.0)

(3)   max

英文文档:

max(iterable, *[, key, default])

max(arg1, arg2, *args[, key])

Return the largest item in an iterable or the largest of two or more arguments.

If one positional argument is provided, it should be an iterable. The largest item in the iterable is returned. If two or more positional arguments are provided, the largest of the positional arguments is returned.

There are two optional keyword-only arguments. The key argument specifies a one-argument ordering function like that used for list.sort(). The default argument specifies an object to return if the provided iterable is empty. If the iterable is empty and default is not provided, a ValueError is raised.

If multiple items are maximal, the function returns the first one encountered. This is consistent with other sort-stability preserving tools such as sorted(iterable, key=keyfunc, reverse=True)[0] and heapq.nlargest(1, iterable, key=keyfunc).

1,max能传入很多参数中的最大值的参数,或者是可迭代对象元素中的最大值.默认参数类型参数当中的最大的,字符型参数是按照字母表排序,然后取靠后的.

2.可以传入参数key,key值就是可以赋值一个函数的内存地址,后面的就可以调用这个函数,来比较出最大的值,并且可以返回可迭代元素本身.(元素本身和比较的值可以不是同一个概念)

可以设置一个key_word参数作为最大的值返回,如果不存在的时候,返回默认值.

3,函数至少要传入两个参数,如果传入一个参数,这一个参数必须是可迭代对象,返回值就是可迭代对象中的最大的元素

>>>max(1)   传入1个参数就是会报错
应该是可迭代的参数
>>>max(1,2)
传入两个,或者是更多的参数,就要返回这些参数中的最大的

4如果非要传入的是不同类型的参数的时候,就看所有的参数能不能进行隐形类型转化,如果可以同样返回值最大的那个,如果不能进行隐式数据类型的转化,就会报错.

>>>max(1,2,3,3.1415926)
整数型和浮点型也可以进行比较,取出最大值
>>>max(1,2,3,4,5,"")
这其中有一个字符串,不能进行转化,所以会报错
>>>max([2,3],[2,4])
列表和列表也是可以进行比较的,是按照索引依次比较,确定谁是最大值,取出那个元素
>>>max([2,3](2,4))
列表和元祖同样是没有办法进行比较的,所以,会报错

5.如果存在相同的最大值得时候,就会优先返回最先出来的那个最大值所代表的元素

a=[1,2]
b=[1,1]
c=[1,2]
max(a,b,c)
可以通过比较出id就可以看的出,是用最早出来的a的最大值,而不是用的c的列表

那些年,很多人没看懂的Python内置函数的更多相关文章

  1. day16 Python 内置函数 大体演示想看就看,会用就行

    1.abs() 获取绝对值 a = -10 print(a.__abs__()) 结果: 10 2.all()  接收一个迭代器,如果跌电气的所有元素都为真,那么返回True,否则返回False tm ...

  2. 【Luogu】P2765魔术球问题(没看懂的乱搞)

    题目链接 这题……讲道理我没看懂. 不过我看懂题解的代码是在干嘛了qwq 题解是zhaoyifan的题解 然后……我来讲讲这个题解好了. 题解把值为i的球拆成了两个,一个编号是i*2,一个编号是i*2 ...

  3. PAT 甲级 1031 Hello World for U (20 分)(一开始没看懂题意)

    1031 Hello World for U (20 分)   Given any string of N (≥) characters, you are asked to form the char ...

  4. len(x) 击败 x.len(),从内置函数看 Python 的设计思想

    内置函数是 Python 的一大特色,用极简的语法实现很多常用的操作. 它们预先定义在内置命名空间中,开箱即用,所见即所得.Python 被公认是一种新手友好型的语言,这种说法能够成立,内置函数在其中 ...

  5. 面试之加分项vue(没看懂,。。。。)

    对大部分人来说,掌握Vue.js基本的几个API后就已经能够正常地开发前端网站.但如果你想更加高效地使用Vue来开发,成为Vue.js大师,那下面我要传授的这五招你一定得认真学习一下了.在面试过程很多 ...

  6. ccf201403-3 记录一个神tmwa了的代码 莫非我没看懂题。。。

    #include <string.h> #include<cstdio> #include<stdio.h> #include <iostream> # ...

  7. QT插件开发方式(没看懂)

    创建一个QT的库项目,删除自动生成的.h和.cpp文件,添加一个接口定义.h文件和一个接口实现类(一个.h一个.cpp).代码如下: 1.接口文件源码 #ifndef PLUGININTERFACE_ ...

  8. 【python之路18】内置函数,补充请看【python之路46】

    1.abs(number)表示某个数字的绝对值 print(abs(-123)) #打印出123 2.all(iterable) 表示可迭代的参数全部为True那么返回True,否则返回False r ...

  9. 你真的看懂Android事件分发了吗?

    引子 Android事件分发其实是老生常谈了,但是说实话,我觉得很多人都只是懂其大概,模棱两可.本文的目的就是再次从源码层次梳理一下,重点放在ViewGroup的dispatchTouchEvent方 ...

随机推荐

  1. angular2系列教程(六)两种pipe:函数式编程与面向对象编程

    今天,我们要讲的是angualr2的pipe这个知识点. 例子

  2. PHP中::、-&amp;gt;、self、$this操作符的区别

    在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之如果被引用的变量或者方法没有被声明成const或者 ...

  3. B-Tree算法分析与实现

    在数据库系统中,或者说在文件系统中,针对存储在磁盘上的数据读取和在内存中是有非常大的区别的,因为内存针对任意在其中的数据是随机访问的,然而从磁盘中读取数据是需要通过机械的方式来读取一个block,不能 ...

  4. jquery easy ui 1.3.4 布局layout(4)

    4.1.easyui布局-layout 在easyui里面只有一种布局方式,layout(东.南.西.北.中)的布局方式,创建layout布局的方式如下: <div id="cc&qu ...

  5. 安装kingroot之后的残留

    /system/usr/icu/icusuflag.conf/system/usr/ikm/ikmsu/system/usr/iku//system/usr/attrch/system/etc/ins ...

  6. [改善Java代码]自由选择字符串拼接方法

    对一个字符串拼接有三种方法:加号,contact方法,StringBuffer或者StringBuilder的append方法,其中加号是最常用的.其他两种方式偶尔会出现在一些开源项目中,那么这三者有 ...

  7. .net对js和css、img剥离项目进行压缩优化、cdn加速

    由于网站首页以及经常用的页面初始化慢,想后面想了对image.js和css进行迁移优化. 1.把他放到独立的域名上面,这个就要对image,js和css从原项目上面脱离,以及把原来很多页面引用的地址修 ...

  8. 解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)——ubuntu环境设置默认是utf-8,文件编码可使用Encodersoft批量转换

    一.Qt环境设置 文件从window上传到Ubuntu后会显示乱码,原因是因为ubuntu环境设置默认是utf-8,Windows默认都是GBK.Windows环境下,Qt Creator,菜单-&g ...

  9. HDU5058

    So easy Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  10. 使用Jmeter进行http接口测试 ---------成都杀手

    前言: 本文主要针对http接口进行测试,使用Jmeter工具实现. Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对 ...