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