该模块cmath包括使用复数的附加功能。
import cmath
此模块可以计算弧度的复数相位:
z = 2+3j # 复数 cmath.phase(z) # 0.982793723247329
它允许在复数的笛卡尔(矩形)和极坐标表示之间进行转换:
cmath.polar(z) # (3.605551275463989,0.982793723247329) cmath.rect(2, cmath.pi/2) # (0 + 2j)
该模块包含的复杂版本
指数函数和对数函数(通常log是自然对数和log10十进制对数):
cmath.exp(z) # (-7.315110094901103 + 1.0427436562359045j)
cmath.log(z) # (1.2824746787307684 + 0.982793723247329j)
cmath.log10(-100) # (2 + 1.3643763538418412j)
平方根:
cmath.sqrt(z) # (1.6741492280355401 + 0.8959774761298381j)
三角函数及其反函数:
cmath.sin(z) # (9.15449914691143-4.168906959966565j)
cmath.cos(z) # (-4.189625690968807-9.109227893755337j)
cmath.tan(z) # (-0.003764025641504249 + 1.00323862735361j)
cmath.asin(z) # (0.5706527843210994 + 1.9833870299165355j)
cmath.acos(z) # (1.0001435424737972-1.9833870299165355j)
cmath.atan(z) # (1.4099210495965755 + 0.22907268296853878j)
cmath.sin(z)**2 + cmath.cos(z)**2 # (1 + 0j)
双曲函数及其反函数:
cmath.sinh(z) # (-3.59056458998578 + 0.5309210862485197j)
cmath.cosh(z) # (-3.7245455049153224 + 0.5118225699873846846j)
cmath.tanh(z) # (0.965385879022133-0.009884375038322495j)
cmath.asinh(z) # (0.5706527843210994 + 1.9833870299165355j)
cmath.acosh(z) # (1.9833870299165355 + 1.0001435424737972j)
cmath.atanh(z) # (0.14694666622552977 + 1.3389725222944935jj)
cmath.cosh(z)**2 - cmath.sin(z)**2 # (1 + 0j)
cmath.cosh((0+1j)*z) - cmath.cos(z) # 0j
前面使用 print() 函数时,都只输出了一个变量,但实际上 print() 函数完全可以同时输出多个变量,而且它具有更多丰富的功能。 print() 函数的详细语法格式如下: print (value,...,sep='',end='\n',file=sys.stdout,flush=False) 从上面的语法格式可以看出,value 参数可以接受任意多个变量或值,因此 print() 函数完
作为基本运算符的补充,Swift 提供了一些对值进行更加复杂操作的高级运算符。这些运算包括你在 C 或 Objective-C 所熟悉的所有按位和移位运算符。 与 C 的算术运算符不同,Swift 中算术运算符默认不会溢出。溢出行为都会作为错误被捕获。要允许溢出行为,可以使用 Swift 中另一套默认支持的溢出运算符,比如溢出加法运算符( &+ )。所有这些溢出运算符都是以( & )符号开始的。
我们在OpenGL中大量使用缓冲来储存数据已经有很长时间了。操作缓冲其实还有更有意思的方式,而且使用纹理将大量数据传入着色器也有更有趣的方法。这一节中,我们将讨论一些更有意思的缓冲函数,以及我们该如何使用纹理对象来储存大量的数据(纹理的部分还没有完成)。 OpenGL中的缓冲只是一个管理特定内存块的对象,没有其它更多的功能了。在我们将它绑定到一个缓冲目标(Buffer Target)时,我们才赋予
上下文与 wantarray Perl 有三种上下文:空、标量、以及列表。 func(); # void my $ret = func(); # scalar my ($ret) = func(); # list my @ret = func(); # list 如果你在子例程或 eval 块中,你能够使用 wantarray 来决定想要的上下文。 以下是处理正则
本文向大家介绍python中list列表的高级函数,包括了python中list列表的高级函数的使用技巧和注意事项,需要的朋友参考一下 在Python所有的数据结构中,list具有重要地位,并且非常的方便,这篇文章主要是讲解list列表的高级应用,基础知识可以查看博客。 此文章为python英文文档的翻译版本,你也可以查看英文版:https://docs.python.org/2/tutorial
最后让我们讨论一些有关函数和闭包的高级功能:函数指针、发散函数和返回值闭包。 我们讨论过了如何向函数传递闭包;也可以向函数传递常规函数!这在我们希望传递已经定义的函数而不是重新定义闭包作为参数是很有用。通过函数指针允许我们使用函数作为另一个函数的参数。函数的类型是 ,使用小写的 “f” 以便不与 Fn 闭包 trait 向混淆。fn 被称为函数指针(function pointer)。指定参数为函