本文源自于一位读者的问题:为啥有的函数或方法调用要使用两对括号呢?

但是在我的印象里并没有这种用法啊。于是我简单扫了一眼代码,发现这位朋友说的并不是函数调用需要两对括号,而是使用元组做函数或方法的参数。

在Python中,这样的情况很多,但是初学者不了解的话容易晕,所以简单整理几个常见的类似情况,也欢迎朋友们补充类似的用法:

# 内置函数max()可以直接对多个值计算最大值

>>> max(3, 5, 7)
7

# 也可以对元组、列表或其他序列计算最大值

>>> max((3, 5, 7))
7

>>> from PIL import Image
>>> im = Image.open('test.png')

# 获取指定位置像素值,必须使用元组做参数
>>> im.getpixel((30, 50))
(255, 255, 255, 255)

# 下面的情况也是用元组做函数参数

# 但是一般不会引起误会

>>> im.putpixel((30,50), (0,0,0,255))
>>> im.getpixel((30, 50))
(0, 0, 0, 255)

# 内置函数sum()不能直接对多个数值求和

>>> sum(3, 5, 7)
Traceback (most recent call last):
  File "<pyshell#9>", line 1, in <module>
    sum(3,5,7)
TypeError: sum expected at most 2 arguments, got 3

# 可以对元组、列表或其他序列对象中的元素求和

>>> sum((3, 5, 7))
15

>>> sum([3, 5, 7])
15
>>> sum(range(3, 8, 2))
15

>>> sum(map(int, '357'))
15

----------相关阅读----------

Python编程常见出错信息及原因分析(4)

Python编程常见出错信息及原因分析(3)

Python编程常见出错信息及原因分析(2)

Python编程常见出错信息及原因分析(1)

如果把Python代码写成这样子就太难看了

Python编程一定要注意的那些“坑”(八):赋值运算符=

Python编程一定要注意的那些“坑”(七)

Python编程一定要注意的那些“坑”(六)

Python编程一定要注意的那些“坑”(五)

Python编程一定要注意的那些“坑”(四)

Python中一定要注意的那些“坑”(三)

Python编程中一定要注意的那些“坑”(二)

Python编程中一定要注意的那些“坑”(一)

Python函数默认值参数的2个坑

详解Python序列解包(5)

详解Python序列解包(4)

详解Python序列解包(3)

详解Python中的生成器表达式(generator expression)

详解Python中的序列解包(2)

详解Python序列解包

1900页Python系列PPT分享一:基础知识(106页)

1900页Python系列PPT分享二:Python序列(列表、元组、字典、集合)(154页)

1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)

1900页Python系列PPT分享四:字符串与正则表达式(109页)

大家都在学Python,你和别人的差距在哪?

大学生们颤抖吧,中学生已经开始学Python了!

董付国老师6本Python系列图书阅读指南

祝所有程序员1024节日快乐

学会提问,你就成功了一大半!

盘点那些让人上火的提问方式(论如何让交流更高效)

----------喜大普奔----------

1、继《Python程序设计基础》(2017年9月第5次印刷)、《Python程序设计(第2版)》(2017年9月第4次印刷)、《Python可以这样学》(2017年11月第4次印刷)系列图书之后,董付国老师新书《Python程序设计开发宝典》(2017年10月第2次印刷)。为庆祝新书《Python程序设计开发宝典》全面上架,清华大学出版社联合“赣江图书专营”淘宝店推出特价优惠活动,《Python程序设计开发宝典》原价69元,新书上架期间超低价39.8元,可以复制下面的链接使用浏览器打开查看图书详情和购买:

https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-14464369246.84.46f16db0roWfX4&id=557107249812&rn=339cbc9df2bac424664103917dedfbd2&abbucket=8&tbpm=3

2、董付国老师新作《中学生可以这样学Python》已于2017年10月正式出版,已在各大书城全面上架。大学生们颤抖吧,中学生已经开始学Python了!

3、董付国老师6本Python系列图书阅读指南

4、董老师免费视频地址: http://pan.baidu.com/s/1c14WYn2 密码: 9xwr

5、董老师收费视频课:

CSDN学院http://edu.csdn.net/search?keywords=%E8%91%A3%E4%BB%98%E5%9B%BD&type=0

龙果学院:http://www.roncoo.com/course/list.html?courseName=Python%E5%8F%AF%E4%BB%A5%E8%BF%99%E6%A0%B7%E5%AD%A6

奇怪,有的Python函数或方法调用需要两对括号?相关推荐

  1. python函数声明和调用定义及原理详解

    这篇文章主要介绍了python函数声明和调用定义及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 函数是指代码片段,可以重复调用,比如我们前 ...

  2. Python 函数定义与调用

    ☞☞☞点击查看更多优秀Python博客☜☜☜ Python 函数定义与调用 Python 函数定义与调用 函数的定义 函数的调用: ==**文章导航:==** Python 函数定义与调用 函数是组织 ...

  3. Python 函数声明和调用 - Python零基础入门教程

    目录 一.前言 二.Python 函数定义 三.Python 函数的调用 四.Python 函数传参 1.Python 函数常规参数 2.Python 函数缺省参数 3.Python 函数不定长参数 ...

  4. python函数定义及调用-python函数声明和调用定义及原理详解

    这篇文章主要介绍了python函数声明和调用定义及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 函数是指代码片段,可以重复调用,比如我们前 ...

  5. python函数定义与调用

    python函数定义与调用 python函数定义与调用 函数定义 函数参数 函数调用 ==**文章导航:==** python函数定义与调用 如果我们用代码实现了一个小功能,但想要在程序代码中重复使用 ...

  6. python函数与方法表,基于Python 函数和方法的区别说明

    简单总结: 1.与类和实例无绑定关系的function都属于函数(function): 2.与类和实例有绑定关系的function都属于方法(method). 首先摒弃错误认知:并不是类中的调用都叫方 ...

  7. python函数和方法的入参格式有哪些_Python函数的参数常见分类与用法实例详解

    本文实例讲述了Python函数的参数常见分类与用法.分享给大家供大家参考,具体如下: 1.形参与实参是什么? 形参(形式参数):指的是 在定义函数时,括号内定义的参数,形参其实就是变量名 实参(实际参 ...

  8. python函数和方法概念_第48p,什么是函数?,Python中函数的定义

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第48篇文章,第三阶段的课程:Python进阶知识:详细讲解Python中的函数(一)====> 函数概念介绍(上篇). 函数 ...

  9. python函数的封装调用_Python封装一个函数来打印到变量

    如果我有一个包含大量打印语句的函数: 即. def funA(): print "Hi" print "There" print "Friend&qu ...

最新文章

  1. 藏在1.85亿人体内的隐形致癌病毒,有人确诊即是晚期
  2. Spring框架IoC和传统bean调用的区别
  3. saslauthd mysql_启用MemCached的SASL认证
  4. How to uninstall git
  5. flyway使用简介
  6. php打开目录文件类型,php中打开目录并输出目录文件实现代码
  7. Fedora 14 网卡设置
  8. 写一个使两个整数进行交换的方法(不能使用临时变量) 【前端每日一题-27】...
  9. usb连接不上 艾德克斯电源_STM32F7 电源控制器(PWR)
  10. php+api抖音随机播放视频源码
  11. java 日志 异步_log4j 详解异步日志的配置和测试
  12. 关于easyui遇到的一些问题
  13. family album U.S.A 02
  14. Bypass功能及原理介绍
  15. 《史上最简单的 SpringCloud 教程》系列 (转载 http://blog.csdn.net/forezp/article/details/70148833 本文出自方志朋的博客)
  16. 高级程序员与初级程序员差别在哪里?
  17. Monyer's Game 0~5关过关方法
  18. Android原生Switch禁止滑动实现
  19. WPS如何实现整行数据行间随机排序
  20. js中的eval语法

热门文章

  1. sqlserver date类型和字符串比较_Mongo的数据类型
  2. mysql主主复制半同步_mysql主从复制中的半同步复制
  3. html5圆形导航菜单,圆滑细腻,那些使用圆形导航菜单的漂亮网页设计
  4. java字符串定义_java字符串基本概念
  5. vue 上次登录时间_vue实现登录之后长时间未操作,退出登录
  6. java获取微信的通讯录,java微信开发API第三步 微信获取以及保存接口调用凭证
  7. thymeleaf条件表达式
  8. androidStudio快捷键概览
  9. genymotion集成eclipse插件安装教程
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的水果蔬菜商城管理系统