首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当从一个类调用Print()时,为什么没有任何东西返回?

当从一个类调用Print()时,没有任何东西返回的原因是Print()方法没有被设计为返回任何值。在编程中,一个方法可以被设计为有返回值或者没有返回值。

如果Print()方法被设计为有返回值,那么在调用该方法时,会返回一个特定的值。这个返回值可以是任何类型,比如整数、字符串、对象等。但是在这个问答内容中,并没有提到Print()方法应该返回什么值,所以可以假设Print()方法是一个没有返回值的方法。

没有返回值的方法通常用于执行一些操作或者打印输出,而不需要返回任何结果。例如,Print()方法可能会将类的属性值打印到控制台上,或者将数据写入文件,但是不需要返回任何值给调用者。

需要注意的是,即使一个方法没有返回值,它仍然可以对类的属性进行修改或者执行其他操作。只是在调用该方法后,并不会有任何返回值可供使用。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网平台:https://cloud.tencent.com/product/iotexplorer
  • 腾讯云移动应用分析(MTA):https://cloud.tencent.com/product/mta
  • 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云游戏多媒体引擎(GME):https://cloud.tencent.com/product/gme
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python入门到放弃 | 超简单 跟我学(七)

调用函数,用同样的方式提供值。函数定义括号中的参数叫做形参,而调用函数提供的参数叫实参。...声明一带星号的参数 *param ,从这个参数开始,之后的所有参数都会被收集进入一名为 param 的元组中。...return语句 return 语句用于从一函数 返回,即跳出这个函数。也可以从函数跳出返回值,返回值是可选的。...给函数提供两个数字作为参数,maximum 函数会返回参数中的最大值。它用一对简单的 if..else 语句来找到并返回最大值。...注意没有返回值的 return 语句等价于 return None。None 在 Python 是一种代表「没有任何东西」特殊的类型。

40840

Swift入门:扩展

扩展允许我们以一种非常干净的方式修改Swift的数据类型以添加新的功能——我们的新代码与现有代码没有区别。 让我们从一扩展开始,它将一扩展添加到一整数。...该扩展名已添加到所有整数,因此您甚至可以这样 调用它: 5.plusOne() 完成此操作后,您将在输出列中看到 6。 我们的扩展在其输入值上加1并将其返回调用方,但不修改原始值。...为了实现这一目标,您可能会认为我们需要执行以下操作: extension Int { func plusOne() { self += 1 } } 这会删除返回值,因为我们现在不返回任何东西...在某些方面,扩展与子类相似,那么为什么要使用扩展? 主要原因是可扩展性:扩展适用于所有数据类型,并且您拥有多个扩展类型,它们不会冲突。...使用扩展,您可以在十不同的文件中具有十不同的功能-它们都可以直接修改同一型,并且您无需继承任何子类。

1.1K10

码如其人,小老弟,你能写一手漂亮的Python函数吗

函数可以被删除,事情就好办了:如果其他地方发生改动,不再需要该函数的单一功能,那么只需将其删除。 举个例子来解释一下。...以下是人们在被问及为什么他们写的函数没有返回给出的一些常见原因: 「函数所做的就是类似 I/O 的操作,例如将一值保存到数据库中,这种函数不能返回有用的输出。」...我并不同意这种观点,因为在操作成功完成,函数可以返回 True。 「我需要返回多个值,因为只返回值并不能代表什么。」 当然也可以返回包含多个值的一元组。...简而言之,即使在现有的代码库中,从函数返回值肯定是一好主意,并且不太可能破坏任何东西。 函数长度 函数的长度直接影响了可读性,因而会影响可维护性。因此要保证你的函数长度足够短。...每次调用这个函数,它都可能返回不同的值。如果它被调用两次,则用户可以第一次输入 3,第二次输入 7,使得对 add_three() 的调用分别返回 6 和 10。 为什么幂等很重要?

47520

干货 | 如何写一更好的Python函数?

给定函数没有返回,有一些常见的原因: “它所做的只是[一些与I / O相关的事情,比如将一值保存到数据库中]。我不能返回任何有用的东西。” 我不同意。如果操作顺利完成,函数可以返回True。...“我需要返回多个值。单独返回值是没有意义的。” 可以使用元组返回多个值。 总是返回有用的值,调用者总是可以自由地忽略它们。...幂等函数很容易测试,因为在使用相同的参数,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一重要且经常被忽视的问题。...例如,如果上面add_three(number)的幂等版本在返回结果之前打印了结果,那么它仍然被认为是幂等的,因为它访问I / O流,这个访问与从函数返回的值无关。...纯函数没有日志语句或print ( )调用。它们不使用数据库或互联网连接。它们不访问或修改非局部变量。它们不调用任何其他非纯函数。

59420

Python 自动化指南(繁琐工作自动化)第二版:三、函数

这个变量在函数调用hello('Bob')返回后被销毁,所以print(name)会引用一不存在的name变量。 这类似于程序终止程序的变量被遗忘。...返回值和返回语句 调用len()函数并给它传递一参数,比如'Hello',函数调用会计算出整数值5,这是您传递给它的字符串的长度。一般来说,函数调用求值的值被称为函数的返回值。...a()被调用,它调用b()➊,后者又调用c()➌。c()函数不调用任何东西;它只显示c() starts、➍ 和c() returns,然后返回到b()中称其为 ➌ 的行。...如果进行了另一函数调用,Python 会将另一帧对象放在调用栈中的另一之上。 函数调用返回,Python 从栈顶移除一帧对象,并将执行移动到存储在其中的行号。...每当调用函数,就会创建一局部作用域。函数中分配的任何变量都存在于函数的局部作用域内。函数返回,局部作用域被破坏,这些变量被遗忘。

93220

干货 | 如何写一更好的Python函数?

给定函数没有返回,有一些常见的原因: “它所做的只是[一些与I / O相关的事情,比如将一值保存到数据库中]。我不能返回任何有用的东西。” 我不同意。如果操作顺利完成,函数可以返回True。...“我需要返回多个值。单独返回值是没有意义的。” 可以使用元组返回多个值。 总是返回有用的值,调用者总是可以自由地忽略它们。...幂等函数很容易测试,因为在使用相同的参数,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一重要且经常被忽视的问题。...例如,如果上面add_three(number)的幂等版本在返回结果之前打印了结果,那么它仍然被认为是幂等的,因为它访问I / O流,这个访问与从函数返回的值无关。...纯函数没有日志语句或print ( )调用。它们不使用数据库或互联网连接。它们不访问或修改非局部变量。它们不调用任何其他非纯函数。

59010

怎样才能写好一 Python 函数

给定函数没有返回,有一些常见的原因: “它所做的只是[一些与 I/O 相关的事情,比如将一值保存到数据库中]。我不能返回任何有用的东西。” 我不同意。...“我需要返回多个值。单独返回值是没有意义的。” 可以使用元组返回多个值。 总是返回有用的值,调用者总是可以自由地忽略它们。 5....幂等函数很容易测试,因为在使用相同的参数,它们总是返回相同的结果。 测试仅仅是检查通过不同调用返回值的预期值。更重要的是,这些测试很快,这是单元测试中一重要且经常被忽视的问题。...例如,如果上面 add_three(number)的幂等版本在返回结果之前打印了结果,那么它仍然被认为是幂等的,因为它访问 I / O 流,这个访问与从函数返回的值无关。...纯函数没有日志语句或 print()调用。它们不使用数据库或互联网连接。它们不访问或修改非局部变量。它们不调用任何其他非纯函数。

55620

码如其人,同学你能写一手漂亮的Python函数吗

函数可以被删除,事情就好办了:如果其他地方发生改动,不再需要该函数的单一功能,那么只需将其删除。 举个例子来解释一下。...以下是人们在被问及为什么他们写的函数没有返回给出的一些常见原因: 「函数所做的就是类似 I/O 的操作,例如将一值保存到数据库中,这种函数不能返回有用的输出。」...简而言之,即使在现有的代码库中,从函数返回值肯定是一好主意,并且不太可能破坏任何东西。 函数长度 函数的长度直接影响了可读性,因而会影响可维护性。因此要保证你的函数长度足够短。...以下展示了非幂等的函数示例: 这函数不是幂等的,因为函数的返回值依赖于 I/O,即用户输入的数字。每次调用这个函数,它都可能返回不同的值。...如果它被调用两次,则用户可以第一次输入 3,第二次输入 7,使得对 add_three() 的调用分别返回 6 和 10。 为什么幂等很重要? 可测试性和可维护性。

43920

笨办法学 Python · 续 练习 30:有限状态机

如果你忘记了else子句,那么你的if-elif条件没有覆盖的任何东西都会退回默认。 让我们将其拆解: 你拥有状态,这是 FSM 当前所在位置的存储指示器。...一事件甚至可以回到同一状态,这是你循环的方式。 根据发生的事件,FSM 从一状态转换到另一状态,并且仅仅由于为状态提供的确切事件(尽管其中一事件可以定义为“任何事件”)。...有时候“没有”也是一事件。这很好很强大,因为这意味着即使没有发生任何事情,你也可以将 FSM 转换到新的状态。然而,实际上,“没有”往往是隐含的事件“再来一次”或“醒来”。...看看我有时候为下一状态返回函数,但其​​他时候我会返回状态函数的调用?试着弄清楚为什么我会这样做,因为它在 FSM 中非常重要。...最后,你可以使用一设计,其中有一FSMRunner,它只知道如何运行这样设计的模块。这比一知道如何运行自身实例的单一有一些优点,但也有一些问题。例如,FSMRunner如何跟踪当前状态?

45820

码如其人,同学你能写一手漂亮的Python函数吗

函数可以被删除,事情就好办了:如果其他地方发生改动,不再需要该函数的单一功能,那么只需将其删除。 举个例子来解释一下。...以下是人们在被问及为什么他们写的函数没有返回给出的一些常见原因: 「函数所做的就是类似 I/O 的操作,例如将一值保存到数据库中,这种函数不能返回有用的输出。」...简而言之,即使在现有的代码库中,从函数返回值肯定是一好主意,并且不太可能破坏任何东西。 函数长度 函数的长度直接影响了可读性,因而会影响可维护性。因此要保证你的函数长度足够短。...以下展示了非幂等的函数示例: 这函数不是幂等的,因为函数的返回值依赖于 I/O,即用户输入的数字。每次调用这个函数,它都可能返回不同的值。...如果它被调用两次,则用户可以第一次输入 3,第二次输入 7,使得对 add_three() 的调用分别返回 6 和 10。 为什么幂等很重要? 可测试性和可维护性。

56730

码如其人,同学你能写一手漂亮的Python函数吗

函数可以被删除,事情就好办了:如果其他地方发生改动,不再需要该函数的单一功能,那么只需将其删除。 举个例子来解释一下。...以下是人们在被问及为什么他们写的函数没有返回给出的一些常见原因: 「函数所做的就是类似 I/O 的操作,例如将一值保存到数据库中,这种函数不能返回有用的输出。」...我并不同意这种观点,因为在操作成功完成,函数可以返回 True。 「我需要返回多个值,因为只返回值并不能代表什么。」 当然也可以返回包含多个值的一元组。...简而言之,即使在现有的代码库中,从函数返回值肯定是一好主意,并且不太可能破坏任何东西。 函数长度 函数的长度直接影响了可读性,因而会影响可维护性。因此要保证你的函数长度足够短。...每次调用这个函数,它都可能返回不同的值。如果它被调用两次,则用户可以第一次输入 3,第二次输入 7,使得对 add_three() 的调用分别返回 6 和 10。 为什么幂等很重要?

48220

理解std::move和std::forward

std::move无条件的将它的参数转换成一右值,而std::forward特定的条件满足,才会执行它的转换。...假设你正在写一,它用来表示注释。此类的构造函数接受一包含注释的std::string做参数,并且将此参数的值拷贝到一数据成员上,你声明一接收by-value参数的构造函数。...当我们用lvalue调用logAndProcess,我们自然地期望: forward给process的也是一lvalue,当我们用rvalue来调用logAndProcess,我们希望process...这就是为什么std::forward被称作是一条件转化(conditional cast):参数被rvalue初始化时,才将参数转化为rvalue....从一纯粹是技术的角度来说,答案是肯定的:std::forward是可以都做了,std::move不是必须的。

1.6K21

如何理解Python中包的引入

Python的from import *和from import *,它们的功能都是将包引入使用,但是它们是怎么执行的以及为什么使用这种语法呢?...从一模块导入全部功能 from import * means意味着“我希望能访问中我有权限访问的全部名称”。...从一包中导入全部,__all__的做法和模块基本一样,不过它处理的是包中的模块(而不是把模块中的名都导入)。...不同之处在于,如果你在一包的__init__.py里面没有声明__all__,from import *语句不会导入任何东西(这个说法也不全对,正确的说法在此) 但是,这有什么不好?...这种方式下,读者(非常可能是未来的你自己)就不会困惑于你代码中使用的一变量/方法//其他东西是哪儿来的,这也告诉了我们下一点: 可读性很重要 即使你需要导入很多东西,一显式地导入也更清楚。

79720

Python学习手册之内部方法、操作符重

= __gt__ 表示运算符 > __ge__ 表示运算符 >= 如果类没有实现 __ne__ ,则返回 __eq__ 相反的值。其他运算符之间没有这样的关系。...对象生命周期 一对象会经历三生命周期:创建,操作,销毁。 对象生命周期的第一阶段是它变量和方法的定义。 接下来下一阶段是这个实例的实例化。 __init__ 被调用是,内存分配给存储实例。...对象被销毁,分配给它的内存会被释放,并可以用于其他目的。 对象的引用计数达到零,对象将销毁。引用计数是指引用对象的变量和其他元素的数量。...如果没有任何变量引用它(它的引用计数为零),意味着没有任何东西可以与其交互,因此可以安全地删除它。在此也可以被删除。del 语句将对象的引用计数减少一,这通常会导致对象被删除。...使用 del 删除对象,对象的引用计数会减少。对象的引用计数达到零,Python 会自动删除它。

38410

Python学习手册之数据封装、方法、

它认为 "我们都是成年人",这意味着你不应该对的访问设计任意的限制。因此,没有任何方法强制方法或属性是严格私有的。 但是,还是有一些方法可以阻止人们访问的内部私有成员。...方法 目前为止,我们所看到调用对象的方法都是有的一实例调用的,然后传递给方法的 self 参数。 方法是不同的 -- 它们由一调用,该类被传递给方法的 cls 参数。...而是通过的方法调用,它返回 cls 的一新对象。 从技术上将,self 和 cls 参数只是约定;它可以更改为其他任何东西。但是,这种约定被大多数人遵循。...这意味着访问同名的实例属性,将调用该方法。 class Animal(): def __init__(self, name, age): self._name = name self....dog Age: 0 >>> “为什么在这个世界上,有95%的人会无法成功,而只有那少数的5%会成功,因为大多数人的心里存在着这三字:不可能。”

64030

day24

:对扩展性要求高的程序 面向过程: 优点:复杂问题简单化,流程化 缺点:扩展性极低,牵一发动全身,维护性相比OOP低 使用场景:对扩展性要求低的程序 将程序员从一具体的操作者转变为指挥者...用于为对象的属性设置初始值 特点: ``` # 执行时机:实例化产生对象时会自动执行该函数 # 会自动传入需要初始化的对象 # 初始化必须包含至少一参数 用于表示对象本身 # 该函数不允许有返回值...为什么要绑定: 每个应用程序其实本质上都是在处理数据,那就必须明确 要处理的数据在哪里,如何处理 绑定方法的好处在于,将需要处理的数据 以及处理数据的方法绑定在一起,这样一来 当你获得一对象就同时获得...数据以及 相应的处理方法 ,简单的调用即可 ### 绑定方法与普通函数的区别 使用调用时,就是一普通函数 有几个参数就得传几个参数 当用对象来调用时,是一绑定方法了,会自动将对象作为第一参数传入...谁调用都不会自动传参 ## 在使用面向对象编程 首先要想的 需要什么对象,这些对象具备什么样的属性和什么样的行为,根据属性和行为创建对应的

27510

某大型国企Java岗位面试题,你能做出几道?

多态允许我们通过父引用来指向子类对象,实现在运行时决定具体调用哪个的方法,这是面向对象编程中的一核心概念。...尽管Cat重写了speak方法返回"Meow",但特定于Cat的方法purr返回"Purr"。 题目中的要求可能有些误导,因为Speakable接口或Animal中都没有purr方法。...然而,既然问题是要speak()返回"Purr",实际上只有通过具体地调用Cat的purr方法才能实现,这意味着应该直接创建一Cat对象。...正确的答案取决于对问题的理解,但按照字面意义,没有选项能直接使speak()返回"Purr",因为purr是Cat特有的方法,而不是Speakable接口或Animal的一部分。...这个问题强调了在设计面向对象系统清晰和准确地理解之间关系的重要性,以及多态在动态方法调用中的作用。 题目三、 假设你有一包含数百万条记录的MySQL数据库表orders。

14310

​Python 之父的解析器系列之三:生成一 PEG 解析器

self.expect(STRING): return string.string return None 注意 ENDMARKER ,它用来确保在最后一条规则后没有遗漏任何东西...我放了一简单的箭头,指向了 grammar() 方法的返回值位置,返回结果是一存储 Rule 的列表。 其余部分跟上篇文章中的 ToyParser 很相似,所以我不作解释。...包装器会缓存每次调用解析方法后的结果——这就是为什么它会被称为“口袋老鼠解析”(packrat parsing)! 这缓存是一字典,元素是存储在 Parser 实例上的那些字典。...再次调用相同的解析方法(在相同的位置,使用相同的参数),我们会从缓存中取出那两结果,并用 self.reset() 来向前移动输入位置,最后返回那缓存中的返回值。...缓存负数的结果也很重要——实际上大多数对解析方法的调用都是负数的结果。在此情况下,返回值为 None,而输入位置不会变。你可以加一assert 断言来检查它。

72720
领券