Level 1 : What happens in this generator?


def test():
    yield 1
    return 2
    yield 3

g = test()
print(next(g))
print(next(g))

Author: SandhyaR | Tags: iterator | 1859+ Python FAQs | Share
while-and-for-loop | string-formatting | rollback | scientific-notation | round-function | string-slicing | loops | random-function | syntaxerror | software-design | map-function | min-function | string-method | quantifiers-(*,-+,-?,-{}) | logical-operators | reading-and-writing-files | sys | shallow-copy | python-history | static-method | oops | matplotlib | syntax-error | object-attribute | syntax | compute | data-structures | data_structure | dataframe-and-series-objects | python-django | reading-and-writing-large-files-efficiently | statement | string-methods | center | expand-tab | decimal | destructor | data-types | staticmethod | virtual-environment | thread | lambdas | using-os-and-pathlib-modules | collection | pass | exception | precedence-and-associativity | functional-programming | comprehension | math | memory | parsing-with-strptime | creating-and-starting-threads | unit-testing | match | operator-or | function-and-scope | reading:-read(),-readline(),-readlines() | file_handling | loop | python-operators | generators | multiple-inheritance | python-syntax-and-structure | sets | control-flow | string-iteration | recursion | string-method | operators | access-modifier | formal-and-actual-parameter | operator | print-statement | string | working-with-binary-files-(rb,-wb) | error-handling | python-module | magic-method | turtle | error-handling | namedtuple | data-type-conversions | generator | operations | conditional-statement | frozenset | exception-handling | enumerate() | list-comprehensions | escape-operator | zip-function | binary | mysql | while-loop | parameter | built-in | pandas | list-mutation | booleans | writing:-write(),-writelines() | opening-files-(open()) | numpy | data-type | memory-management | command-line-parsing | context-manager | higher-order-function | introduction-to-multiprocessing | matrix | swapping | assert | list-methods-and-slicing | design-principle | random | pickling--unpickling | iterator | built-in-modules | import-method | thread-synchronization | iterable | else-statement | zfill-function | regex | numeric | yield | syntax-error | control-statement | strings | tuples | default-mutable-argument | regular-expressions | working-with-file-paths | thread-safe-data-structures-(queue.queue) | counter-function | copy | async | functional-programming | datetime | file-handling | update | using-yield-in-functions | tuple-unpacking | introduction-to-python | oop | type-conversion-and-casting | raise-statement | slicing | boolean | list-indexing | integer | sorting-and-ranking | math-copysign | indexing | mathematics | pep | int | polymorphism | lambda-function | dictionaries | mathematical-function | filter-function | array | built-in-function | expression | return-statement | string-manipulation | attribute | using-join()-and-is_alive()-methods | walking-through-directories-using-os.walk() | round | pseudocode | class-and-instance-variable | id-function | head-and-tail | recurssion | method | postfix | creating-custom-modules | class-and-inheritance | complex-number | file | multiple-except-blocks | bitwise-operator | boolean-and-non-boolean | type_conversion | why-use-multiprocessing-over-threading?-(gil) | condition | indexing:-loc-vs-iloc | generators-in-python | init | identity-operator | mapping-function | decorator | sum() | list-slicing | type-conversion | append | with-statement | intering | odd-number | tuple | bitwise | aggregating-data-with-functools.reduce() | datetime.date,-datetime.time,-datetime.datetime | arithmetic-expression | inheritance | operator-overloading | data-structures-in-python | choice | loop-control-statements | lists | global-variable | using-lists-as-stacks | data-structure | def | asyncio | raise | handling-missing-values-(fillna,-dropna) | sorted | exception-handling | heap-memory | dictionary | version | descriptors | working-with-dates-and-times | installation | set | while-loops | membership-operators-(in,-not-in) | exponentiation | __init_subclass__ | data-type | feature | operator-and | complex | list-comprehension | split | using-map()-for-transformations | key-value-pairs | loop-control | global | benefit | __all__-attribute | defining-functions | comment | assignment-operator | python_version | print | debugging | logical-operator | logical-operator | precedence | anchors-(^,-$) | package-management | dictionary-methods | control-flow | conditional-statements | multiprocessing | keyword | dicts | filtering-and-indexing | class-decorators | asyncio-module | assignment-operators | mutable | conditional-statement | basic | input | list,-set,-and-dictionary-comprehensions | lambda-functions | slice | tuple-methods | immutability | python | deep-copy | global-variable | module | list-operation | iterators | format | lambda | objects | list | zip | sys-module | joining-and-merging-dataframes | while-else-loop | built-in-function | sum-function | multiple-inheritance | managing-directories-with-os-and-shutil | class-and-object | constructor | overriding-methods | function-argument | call | set-operation | string-formatting | class | application | error | fabs-function | boolean-masking | interpreter | invalid-list | encoding | nested-loop | arithmetic-operation | counter | indentation | arbitrary-arguments-(*args,-**kwargs) | sorting | name-mangling | identity-operator | filter | input-function | using-assertions-(assertequal,-assertraises) | join | integers | file-handling | namespace | collections | threading | literal-characters-and-special-characters | goto-function | floating-point-precision | working-with-temporary-files-using-tempfile | gil | conversion | functions | bitwise-operator | __future__ | stack | datatype | dictionary-comprehensions | max-min | version-check | list-method | inherit | single-inheritance | string-concatenation | binary-operation | data-structure | variable | identifier | floats | global-keyword | min-max-function | method-overloading | difference-between-threads-and-processes | time-series-with-pandas | string-slicing | methods | type-conversion | immutable-data-type | introduction-to-threads | overflow | virtual-environment | python-repl | default-arguments | classes | logical-operation | advanced-file-operations | test-discovery | list-vs-tuple | factorial-function | identity-operators-(is,-is-not) | touples | for | formatting-with-strftime | multithreading | else | operand | library | range | list-comprehension | docstring | regular-expression | function | using-else-and-finally | encapsulation | directory-operations | matrix-list-comprehension | input-function | implementation | typeerror | list-join | comparison | using-the-threading-module ...