MST

星途 面试题库

面试题:Python中continue语句在生成器函数中的应用

请编写一个生成器函数,该函数生成1到100之间的所有非平方数(即某个整数的平方的数),在生成过程中使用continue语句跳过平方数,然后通过调用这个生成器函数打印出前10个非平方数。
21.8万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
def non_square_generator():
    for num in range(1, 101):
        root = int(num ** 0.5)
        if root ** 2 == num:
            continue
        yield num

gen = non_square_generator()
count = 0
for num in gen:
    print(num)
    count += 1
    if count == 10:
        break