Python 中外部函数'return'语法错误



我正在尝试使用python计算单词fizz。然而,它给了我一个错误。

def fizz_count(x):
    count =0
for item in x :
    if item== "fizz":
        count=count+1
return count
item= ["fizz","cat", "fizz", "Dog", "fizz"]
example= fizz_count(item)
print example

我检查了缩进,但仍然不起作用。我哪里做错了?

你的缩进似乎是不正确的,你不应该有第一个return count(为什么你要返回count一旦你定义它??)。

def fizz_count(x):
    count = 0
    for item in x:
        if item == "fizz":
            count += 1  # equivalent to count = count + 1
    return count
item = ["fizz", "cat", "fizz", "Dog", "fizz"]
example = fizz_count(item)
print example

请尝试以下代码:在count = 0之后删除return count

也有一些缩进的变化。

def fizz_count(x):
    count = 0
    for item in x:
        if item== "fizz":
            count=count+1
    return count
item = ["fizz","cat", "fizz", "Dog", "fizz"]
example = fizz_count(item)
print example

问题是行返回

中的标识。

试试这个:

def fizz_count(x):
    count =0
    for item in x :
        if item == "fizz":
            count += 1
    return count

代码中不需要第一个'return'语句。它的工作方式如下,缩进和间距固定:

def fizz_count(x):
    count = 0
    for item in x:
        if item == "fizz":
            count = count + 1
    return count
item= ["fizz","cat", "fizz", "Dog", "fizz"]
example = fizz_count(item)
print example

我是python世界的新手。我学到的是return语句应该是这样的:

示例一:-

def split_train_test(data, test_ratio):
    shuffled_indices = np.random.permutation(len(data))
    test_set_size = int(len(data) * test_ratio)
    test_indices = shuffled_indices[:test_set_size]
    train_indices = shuffled_indices[test_set_size:]
    return data.iloc[train_indices],data.iloc[test_indices]

例二:-

def load_housing_data(housing_path=HOUSING_PATH):
    csv_path = os.path.join(housing_path, "housing.csv")
    return pd.read_csv(csv_path)

相关内容

最新更新