--- acl_categories: - '@write' - '@list' - '@slow' arguments: - display_text: key key_spec_index: 0 name: key type: key - display_text: index name: index type: integer - display_text: element name: element type: string arity: 4 categories: - docs - develop - stack - oss - rs - rc - oss - kubernetes - clients command_flags: - write - denyoom complexity: O(N) where N is the length of the list. Setting either the first or the last element of the list is O(1). description: Sets the value of an element in a list by its index. group: list hidden: false key_specs: - RW: true begin_search: spec: index: 1 type: index find_keys: spec: keystep: 1 lastkey: 0 limit: 0 type: range update: true linkTitle: LSET railroad_diagram: /images/railroad/lset.svg since: 1.0.0 summary: Sets the value of an element in a list by its index. syntax_fmt: LSET key index element title: LSET --- Sets the list element at `index` to `element`. For more information on the `index` argument, see [`LINDEX`]({{< relref "/commands/lindex" >}}). An error is returned for out of range indexes. ## Examples {{% redis-cli %}} RPUSH mylist "one" RPUSH mylist "two" RPUSH mylist "three" LSET mylist 0 "four" LSET mylist -2 "five" LRANGE mylist 0 -1 {{% /redis-cli %}} ## Redis Software and Redis Cloud compatibility | Redis
Software | Redis
Cloud | Notes | |:----------------------|:-----------------|:------| | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | ## Return information {{< multitabs id="lset-return-info" tab1="RESP2" tab2="RESP3" >}} [Simple string reply](../../develop/reference/protocol-spec#simple-strings): `OK`. -tab-sep- [Simple string reply](../../develop/reference/protocol-spec#simple-strings): `OK`. {{< /multitabs >}}