我正在编写一个函数,该函数将返回一个平方数列表,但是如果该函数采用参数('apple')或(range(10))或一个列表,则将返回一个空列表。我已经完成了第一部分,但无法弄清楚如果参数n不是整数,如何返回空集-我一直收到错误:无序类型:str()> int()我知道字符串可以可以与一个整数进行比较,但是我需要它来返回空列表。
def square(n):
return n**2
def Squares(n):
if n>0:
mapResult=map(square,range(1,n+1))
squareList=(list(mapResult))
else:
squareList=[]
return squareList
Run Code Online (Sandbox Code Playgroud) 我编写了这个python函数,它将列表作为参数,并确定列表中的哪些元素是完美的正方形,然后返回仅包含那些选择元素的新列表.
这是我的功能:
def square(n):
return n**2
def perfectSquares1(L):
import math
m=max(L)
for n in L:
if type(n) is int and n>0:
Result=map(square,range(1,math.floor(math.sqrt(m))))
L1=list(Result)
L2=list(set(L).intersection(set(L1)))
return L2
Run Code Online (Sandbox Code Playgroud)
但是现在我想重新尝试一下:我想编写一个单行布尔函数,它将n作为参数,如果n是一个完美的正方形则返回True,否则返回false.
有什么建议?我无法想办法让它只有一条线.
我正在编写一个函数,它接受一个参数'n',它将使用递归公式将十进制转换为二进制数.
这是我对非递归函数的看法,但我需要弄清楚如何递归地编写它.
def dec2bin(n):
bStr = ''
if n < 0:
return 'Must be a positive integer'
elif n == 0:
return '0'
else:
bStr += str(n%2)
return bStr
Run Code Online (Sandbox Code Playgroud) 我正在写一个拼写检查功能,我有一个看起来像这样的文本文件
teh the
cta cat
dgo dog
dya day
frmo from
memeber member
Run Code Online (Sandbox Code Playgroud)
拼写错误在左边(这将是我的键),正确的拼写在右边(我的值).
def spell():
corrections=open('autoCorrect.txt','r')
dictCorrect={}
for line in corrections:
corrections[0]=[1]
list(dictCorrect.items())
Run Code Online (Sandbox Code Playgroud)
我知道我希望我的功能做什么,但无法弄清楚如何执行它.
我正在编写一个函数,它将一个单词作为参数,并查看每个字符,如果单词中有数字,它将返回单词
这是我的字符串,我将通过'让我们看看pg11'进行迭代.我想看看每个单词中的每个字符,如果单词中有一个数字,我想按照它的方式返回单词.
import string
def containsDigit(word):
for ch in word:
if ch == string.digits
return word
Run Code Online (Sandbox Code Playgroud)