我是一名iPython初学者,我的代码需要一些帮助.我想从输入中读取6个值.它们可以是整数,浮点数,复数,字符串或列表.读取值并将它们附加到列表后,我执行以下转换:
对于整数:将其替换为列表中的平方根.
对于浮点数:将其替换为列表中数字的余弦值.
对于复数:将其替换为列表中的实部.
对于字符串:将其转换为列表中的大写字母.
对于列表:丢弃最后一个元素.
该程序引发以下错误:
File "<ipython-input-1-1f00b88d82c9>", line 20
else i is list:
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
并且它也不能将字符串值存储到列表中.它总是存储.我该如何解决这个错误?这是我的代码:
import math as m
l=[]
i=0
while i<6:
x=input("Enter some values: ")
if isinstance(x,str):
x=int(x)
l.append(x)
i=i+1
print l
for i in l:
if i is str:
i=s.capitalize(i)
elif i is int:
i=m.sqrt(i)
elif i is float:
i=m.cos(i)
elif i is complex:
i=l.real(i)
else i is list:
n=len(l)
i=remove[n-1]
print l
Run Code Online (Sandbox Code Playgroud) 我想打印一个内置方法的源代码。例如,数学是python的内置模块,我想打印ceil的源代码
我知道如何使用inspect.getsource打印自定义模块的源代码
需要帮助
我正在尝试创建一个程序,我可以在其中调用任何内置方法或函数,并且它将仅显示该函数或模块的源代码。
Python 几乎拥有内置库中的所有内容,我想使用这些库
示例:
input: factorial
output:
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
Run Code Online (Sandbox Code Playgroud)
import inspect
inspect.getsource(factorial)
Run Code Online (Sandbox Code Playgroud)
不起作用......导致类型错误
import inspect
import math
print(inspect.getsource(math.ceil)
Run Code Online (Sandbox Code Playgroud)
TypeError: <built-in function ceil> is not a module, class, method, function, traceback, frame, or code object
Run Code Online (Sandbox Code Playgroud)
提前致谢 :)
我最近在我的笔记本电脑上安装了Atom作为IDE,用于大学.我安装了Hydrogen作为一种方便的解决方案,可以随时显示一些情节.但每当我运行Hydrogen时,我都会收到此错误:
NameError Traceback (most recent call last)
< ipython-input-1-1eb00ff78cf2> in <module>
----> 1 plt.show()
NameError: name 'plt' is not defined
Run Code Online (Sandbox Code Playgroud)
但是Matplotlib在正常执行时工作正常,而IPython似乎也可以.这是我试图以测试方式运行的代码:
%matplotlib ipympl
import matplotlib.pyplot as plt
a_x=[1,2,3,4,5,6]
a_y=[1,2,3,4,5,6]
plt.plot(a_x, a_y)
plt.show()
Run Code Online (Sandbox Code Playgroud)
此处提供了该问题的视频.
我希望以更大的比例运行计时,并输出iPython %timeit魔术函数的结果数据帧.我不想重写它.我应该如何直接访问?
我想要这样的事情:
f = lambda x: (x * 4. + 2) ** .5
for i in xrange(3):
print timeit(f(i))
Run Code Online (Sandbox Code Playgroud)
我会得到一些输出:
100 loops: 1 s
10 loops: 10 s
10 loops: 3e9 ns
Run Code Online (Sandbox Code Playgroud)
或类似的.