layout: section title: “ToString” permalink: /documentation/transforms/python/elementwise/tostring/ section_menu: section-menu/documentation.html

ToString

{% include button-pydoc.md path=“apache_beam.transforms.util” class=“ToString” %}

Transforms every element in an input collection to a string.

Examples

Any non-string element can be converted to a string using standard Python functions and methods. Many I/O transforms, such as textio.WriteToText, expect their input elements to be strings.

Example 1: Key-value pairs to string

The following example converts a (key, value) pair into a string delimited by ','. You can specify a different delimiter using the delimiter argument.

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py tag:tostring_kvs %}```

{:.notebook-skip}
Output `PCollection` after `ToString`:

{:.notebook-skip}

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring_test.py tag:plants %}```

{% include buttons-code-snippet.md py=“sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py” notebook=“examples/notebooks/documentation/transforms/python/elementwise/tostring” %}

Example 2: Elements to string

The following example converts a dictionary into a string. The string output will be equivalent to str(element).

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py tag:tostring_element %}```

{:.notebook-skip}
Output `PCollection` after `ToString`:

{:.notebook-skip}

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring_test.py tag:plant_lists %}```

{% include buttons-code-snippet.md py=“sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py” notebook=“examples/notebooks/documentation/transforms/python/elementwise/tostring” %}

Example 3: Iterables to string

The following example converts an iterable, in this case a list of strings, into a string delimited by ','. You can specify a different delimiter using the delimiter argument. The string output will be equivalent to iterable.join(delimiter).

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py tag:tostring_iterables %}```

{:.notebook-skip}
Output `PCollection` after `ToString`:

{:.notebook-skip}

{% github_sample /apache/beam/blob/master/sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring_test.py tag:plants_csv %}```

{% include buttons-code-snippet.md py=“sdks/python/apache_beam/examples/snippets/transforms/elementwise/tostring.py” notebook=“examples/notebooks/documentation/transforms/python/elementwise/tostring” %}

Related transforms

  • [Map]({{ site.baseurl }}/documentation/transforms/python/elementwise/map) applies a simple 1-to-1 mapping function over each element in the collection

{% include button-pydoc.md path=“apache_beam.transforms.util” class=“ToString” %}