python对于不同长度的字符串,按照其某个元素后面的数字,对字符串排序
时间: 2023-06-07 09:09:49 浏览: 177
可以使用Python中的sorted()函数进行排序,其中可以通过lambda函数指定按照某个元素后面的数字排序。例如:
```python
strings = ['abc1', 'abc10', 'abc2', 'abc20']
sorted_strings = sorted(strings, key=lambda x: int(x[x.index('c')+1:]))
print(sorted_strings)
```
输出结果为:
```
['abc1', 'abc2', 'abc10', 'abc20']
```
相关问题
python按长度排序字符串
可以使用Python的内置函数`sorted()`来排序字符串,可以通过指定`key`参数来排序。下面是按照字符串长度排序的示例代码:
```python
strings = ['cat', 'banana', 'dog', 'apple']
sorted_strings = sorted(strings, key=len)
print(sorted_strings)
```
输出结果为:
```
['cat', 'dog', 'apple', 'banana']
```
在上面的代码中,我们将`strings`列表传递给`sorted()`函数,并指定`key`参数为`len`函数,以便按照字符串的长度进行排序。最终得到的`sorted_strings`列表按照字符串长度从短到长排序。
Python对字符串排序
Python 中可以使用字符串的 `sorted()` 函数进行排序,该函数返回一个新的已排序的字符串。例如:
```python
s = "cba"
sorted_s = sorted(s)
print(sorted_s) # 输出 ['a', 'b', 'c']
```
如果需要按照字符串的字典序逆序排序,可以使用 `reverse` 参数:
```python
s = "cba"
sorted_s_reverse = sorted(s, reverse=True)
print(sorted_s_reverse) # 输出 ['c', 'b', 'a']
```
如果需要按照字符串的长度进行排序,可以使用 `key` 参数和 `len()` 函数:
```python
s = "abc defg h ijkl"
sorted_s_length = sorted(s.split(), key=len)
print(sorted_s_length) # 输出 ['h', 'i', 'abc', 'defg', 'ijkl']
```
注意:`sorted()` 函数返回的是一个已排序的列表,如果需要将其转换为字符串,可以使用 `join()` 方法。例如:
```python
s = "cba"
sorted_s = sorted(s)
sorted_s_str = "".join(sorted_s)
print(sorted_s_str) # 输出 "abc"
```
阅读全文