首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python 函数为什么会默认返回 None?

    它们的执行效果跟直接写 return 语句相比,是完全相同的: 这 4 个例子属于两种类型:一种没有写 return,但是都有隐藏的 return 返回值;一种写了 return,而且实际也有返回值。...不管有没有写 return,它们都会执行 return 的逻辑,而且默认的返回值就是 None。 那么,问题来了:Python 的函数为什么能默认返回 None 呢?它是如何实现的呢?...答案就在解释器中,当 CPython 解释器执行到函数的最后一个代码块时,若发现没有返回值,它就会主动地加上一个 Py_None 值返回(出自:compile.c): 也就是说,如果定义的函数没有返回值...,Python 解释器就会(强行地)默认给我们注入一段返回逻辑!...那么,这就会引出新的问题:Python 为什么要求函数都要有返回值呢?为什么它不像某些语言那样,提供一个 void 关键字,支持定义无返回值的空函数呢?

    2.9K40

    【Python】函数 ④ ( 函数 None 返回值 | None 值应用场景 | 用于 if 判断 | 定义无初始内容变量 | 代码示例 )

    # 函数体 # return 返回值 (可选) Python 函数中没有显示定义返回值 , 那么返回的就是 特殊字面量 None , 其类型是 ; None...- 接收 None 返回值 下面的代码中 , hello 函数没有使用 return 关键字 返回 返回值 ; 该 hello 函数 没有显示定义 返回值 , 实际上该函数返回的是 None 返回值...; 使用变量接收该函数的返回值 , 返回值是 None , 返回值类型是 NoneType ; 代码示例 : """ 接收 函数 None 返回值示例 """ # 定义无返回值的函数 def hello...return 关键字返回 None 在该示例中 , 比上一个示例多了 return None 返回值 , 其执行效果与没有返回值一模一样 ; 代码示例 : """ 接收 函数 None 返回值示例 ""...None 二、None 值应用场景 ---- 1、None 值应用场景简介 函数 None 返回值应用场景 : 函数返回值 : 表示函数没有返回值 ; 用于 if

    1.3K20

    Python 函数返回值别漏标!显式声明 None 的 3 大好处

    显式声明 None 的 3 大好处很多刚写 Python 的朋友,甚至有些老开发者,都会犯一个 “不起眼” 的错:函数明明没有返回值(比如只做打印、保存数据这类操作),却不明确标注返回None。...而显式声明-> None,就是给这个工具 “指路”,让它知道你这个函数就该返回None,一旦返回了别的东西,马上报错。...用表格更直观:显式声明 vs 隐式声明的区别对比维度 显式声明返回 None(def func () -> None)隐式返回 None(def func ())可读性 高:一眼知道 “无返回值”...错误 1:隐式返回 None,却标注了其他类型比如函数实际没返回值(返回 None),但类型注解标了-> str,mypy会报错,自己也容易误解:# 错代码:实际返回None,却标了-> strdef...,函数返回 None。

    30510

    Python数字图像处理-3种图像读取方式总结

    一点疑惑,我通过查询库函数可知plt.show()第一个参数为要显示的对象(array_like),字面意思理解为类似数组的对象,但是很明显,PIL库返回的不是’numpy.ndarray’对象,而是’...PIL.JpegImagePlugin.JpegImageFile’对象,那为什么plt.show()函数还是能显示Image.open()函数读取图像返回的结果呢?...None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=None, filternorm=1, filterrad...=4.0, imlim=None, resample=None, url=None, hold=None, data=None, **kwargs) Docstring: Display an image...读取图像的信息; PIL.Image.open 不直接返回numpy对象,可以用numpy提供的函数进行转换,参考Image和Ndarray互相转换; scipy.ndimage.imread直接返回

    1.9K30

    python PIL库的使用

    ): 这个函数创建一幅给定模式(mode)和尺寸(size)的图片,如果省略color参数,则创建的图片被黑色填充满,如果 color 参数是 None 值,则图片还没初始化。...Image类的常用属性 1.format:识别图像格式或来源,如果图像不是从文件中读取,值为none 2.mode:图像的色彩模式,'L'为灰色图像,'RGB'为真彩色图像,"CMYk"为出版图像。...3.size:图像宽度和高度,单位是像素,返回值为二元元组。...RGB Image类的方法 1.seek(frame): 跳转并返回图像中的指定帧 2.tell():返回当前帧的序号 3.save(filename,format):将图像保存为filename文件名...8.point(func):根据函数func的功能对每个元素进行运算,返回图像副本、 9.split(): 提取RGB图像的每个颜色通道,返回图像副本、 10.merge(mode,bands):合并通道

    1.7K20

    软件测试|一文带你入门Python图片处理神器Pillow

    (JPG, PNG, BMP, None, etc.)。...用来标识图片的格式或来源size: 返回图像的尺寸。以二元组的形式返回图像的宽度和高度mode: 返回图像的色彩模式(L, RGB, CMYK, etc.)。...注:show()方法打开图片会比较慢,需要等待数秒钟保存图片pillow保存图像可以使用save()方法,语法示例为:Image.save(fp, format=None, **params)fp -...如果使用文件对象而不是文件名,应该总是使用这个参数options - 图像写入器的额外参数返回值 - 无注:保存的时候,如果没有指定图片格式的话,那么Pollow会根据输入的后缀名决定图片的格式图片转换...= None# 读取img文件img_file = 'conan1.jpg'im = Image.open(img_file)# 获取原尺寸图片大小w, h = im.size# 图片进行50%的压缩

    1.1K30

    图像处理库Pillow(PIL)的使用-2(实例+详细注释+图片脚本)

    resize() resize()可以实现图片的缩放效果,它返回一个新的Image对象,该对象具有指定的尺寸。原始图像不会被修改。...该函数也是返回一个Image对象 语法格式如下: Image.merge(mode,bands) 参数: mode:指定输出图片的模式 bands:参数类型为元组或者列表,其元素值是组成图像的颜色通道,...crop() Image 类提供的 crop() 函数允许我们以矩形区域的方式对原图像进行裁剪,crop() 方法会返回一个 Image 对象语法格式如下: crop(box=None) box:表示裁剪区域...,指定要裁剪的图像的原始区域,是一个四元组(x1,y1,x2,y2),表示图像的起始左上角和结束右下角的坐标,默认为 None,表示拷贝原图像 示例: from PIL import Image # 导入...=None, center=None, translate=None, fillcolor=None) 参数解释: 其中第一个为必选参数,其余为可选 angle:旋转的角度 resample:重采样滤波器

    1.3K10
    领券