pub struct PyTuple(/* private fields */);
Expand description
Represents a Python tuple
object.
Values of this type are accessed via PyO3’s smart pointers, e.g. as
Py<PyTuple>
or Bound<'py, PyTuple>
.
For APIs available on tuple
objects, see the PyTupleMethods
trait which is implemented for
Bound<'py, PyTuple>
.
Implementations§
Source§impl PyTuple
impl PyTuple
Sourcepub fn new_bound<T, U>(
py: Python<'_>,
elements: impl IntoIterator<Item = T, IntoIter = U>,
) -> Bound<'_, PyTuple>where
T: ToPyObject,
U: ExactSizeIterator<Item = T>,
pub fn new_bound<T, U>(
py: Python<'_>,
elements: impl IntoIterator<Item = T, IntoIter = U>,
) -> Bound<'_, PyTuple>where
T: ToPyObject,
U: ExactSizeIterator<Item = T>,
Constructs a new tuple with the given elements.
If you want to create a PyTuple
with elements of different or unknown types, or from an
iterable that doesn’t implement ExactSizeIterator
, create a Rust tuple with the given
elements and convert it at once using into_py
.
§Examples
use pyo3::prelude::*;
use pyo3::types::PyTuple;
Python::with_gil(|py| {
let elements: Vec<i32> = vec![0, 1, 2, 3, 4, 5];
let tuple = PyTuple::new_bound(py, elements);
assert_eq!(format!("{:?}", tuple), "(0, 1, 2, 3, 4, 5)");
});
§Panics
This function will panic if element
’s ExactSizeIterator
implementation is incorrect.
All standard library structures implement this trait correctly, if they do, so calling this
function using Vec
<T>
or &[T]
will always succeed.
Sourcepub fn empty_bound(py: Python<'_>) -> Bound<'_, PyTuple>
pub fn empty_bound(py: Python<'_>) -> Bound<'_, PyTuple>
Constructs an empty tuple (on the Python side, a singleton object).
Trait Implementations§
Source§impl AsPyPointer for PyTuple
impl AsPyPointer for PyTuple
Source§impl PyTypeInfo for PyTuple
impl PyTypeInfo for PyTuple
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Source§fn is_type_of_bound(obj: &Bound<'_, PyAny>) -> bool
fn is_type_of_bound(obj: &Bound<'_, PyAny>) -> bool
object
is an instance of this type or a subclass of this type.