相关疑难解决方法(0)

Python是否具有用于字符串自然排序的内置函数?

使用Python 3.x,我有一个字符串列表,我想对其执行自然的字母排序.

自然排序: Windows中文件的排序顺序.

例如,以下列表是自然排序的(我想要的):

['elm0', 'elm1', 'Elm2', 'elm9', 'elm10', 'Elm11', 'Elm12', 'elm13']
Run Code Online (Sandbox Code Playgroud)

这是上面列表的"排序"版本(我有):

['Elm11', 'Elm12', 'Elm2', 'elm0', 'elm1', 'elm10', 'elm13', 'elm9']
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个行为与第一个类似的排序函数.

python sorting python-3.x

249
推荐指数
9
解决办法
8万
查看次数

如何正确排序内部带有数字的字符串?

可能重复:
Python是否具有用于字符串自然排序的内置函数?

我有一个包含数字的字符串列表,我找不到对它们进行排序的好方法.
例如,我得到这样的东西:

something1
something12
something17
something2
something25
something29
Run Code Online (Sandbox Code Playgroud)

用这个sort()方法.

我知道我可能需要以某种方式提取数字,然后对列表进行排序,但我不知道如何以最简单的方式进行.

python regex sorting string

101
推荐指数
1
解决办法
7万
查看次数

自然排序算法

如何在不同的编程语言中自然地对字符串数组进行排序?发布您的实现以及答案中的语言.

language-agnostic sorting algorithm natural-sort

23
推荐指数
4
解决办法
8695
查看次数

如何检查python 2.7中的原始输入是否为整数?

有没有一种方法可以用来检查a raw_input是否是整数?

我在网上研究后发现了这种方法:

print isinstance(raw_input("number: ")), int)
Run Code Online (Sandbox Code Playgroud)

但是当我运行它并输入4例如,我得到FALSE.我是python的新手,任何帮助都会受到赞赏.

python string integer raw-input python-2.7

13
推荐指数
2
解决办法
5万
查看次数

在python中排序列表

如果我有一个字符串列表,例如["a143.txt", "a9.txt", ]我如何按列表中的数字按升序排序,而不是按字符串排序.即我要"a9.txt"出庭"a143.txt",因为9 < 143.

谢谢.

python sorting list prefix

8
推荐指数
1
解决办法
1442
查看次数

在python中排序字母数字字典键

我有一个字典,如A1-A15,B1-B15等.运行dictionary.keys().sort()导致A1,A10,A11 ......

def sort_keys(dictionary):
    keys = dictionary.keys()
    keys.sort()
    return map(dictionary.get, keys)
Run Code Online (Sandbox Code Playgroud)

如何对它进行排序以使它们按正确的顺序排列,即A1,A2,A3 ...?

python sorting dictionary

4
推荐指数
1
解决办法
2800
查看次数

Python排序列表中的第一个数字

我想用第一个数字对这个字符串列表进行排序,最好是在一行中使用正则表达式,但欢迎其他建议.我正在努力获得最快捷的方式.这是清单;

[
  "10. iTOMA Radio Alarm Clock FM Digital Radio Clock Bedside Alarm Clock Wireless I",
  "11. iTOMA Radio Alarm Clock FM Digital Radio Clock Bedside Alarm Clock Wireless J",
  "12. iTOMA Radio Alarm Clock FM Digital Radio Clock Bedside Alarm Clock Wireless K",
  "13. iTOMA Radio Alarm Clock FM Digital Radio Clock Bedside Alarm Clock Wireless L",
  "14. iTOMA Radio Alarm Clock FM Digital Radio Clock Bedside Alarm Clock Wireless M",
  "15. iTOMA Radio Alarm Clock FM Digital Radio …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

3
推荐指数
2
解决办法
3188
查看次数

如何按其值排序"字符串"数字的python列表

我有这个文件列表:

1.jpg, 2.jpg, ..., 10.jpg, ...
Run Code Online (Sandbox Code Playgroud)

如果我做一个python os.listdir(".")我列出了所有文件,但按字母顺序排列如下:

[1.jpg, 10.jpg, 11.jpg, ..., 2.jpg, 20.jpg....]
Run Code Online (Sandbox Code Playgroud)

但我希望它们按数值排序

[1.jpg, 2.jpg ,...10 ,11 ,12... ]
Run Code Online (Sandbox Code Playgroud)

如何重新排序列表以完成此操作?

TX

python list

0
推荐指数
1
解决办法
138
查看次数

如何显示Unicodes数值属性

'\u00BD' # ½
'\u00B2' # ²
Run Code Online (Sandbox Code Playgroud)

我试图更好地理解isdecimal()和isdigit(),因为它有必要理解unicode数值属性.我怎样才能看到例如上面两个unicodes的数值属性.

python unicode python-3.x

0
推荐指数
1
解决办法
745
查看次数

排序编号列表

我似乎无法找到有关如何正确排序这样的列表的任何信息.我的列表看起来像这样

["1. Banana", "2. Pear", "11. Apple", "5. Grapes", "4. Orange"]
Run Code Online (Sandbox Code Playgroud)

使用sorted()离开我与以下

['1. Banana', '11. Apple', '2. Pear', '3. Orange', '4. Grapes']
Run Code Online (Sandbox Code Playgroud)

我希望它能像这样出来

['1. Banana', '2. Pear', '3. Orange', '4. Grapes', '11. Apple']
Run Code Online (Sandbox Code Playgroud)


如果它增加了任何复杂性我需要使用它来使用特定键的值对字典列表进行排序,所以我当前的代码是

list.sort(key=lambda k: k["key"])
Run Code Online (Sandbox Code Playgroud)

python sorting list

0
推荐指数
1
解决办法
86
查看次数

如何按目录文件名中的数字对文件进行排序?

我有一个包含许多按特定顺序命名的文本文件的目录:

0.txt
1.txt
2.txt
....
100.txt
101.txt
.....
40000.txt
Run Code Online (Sandbox Code Playgroud)

当我尝试检索我使用的所有文件的排序列表时:

for file in sorted(os.listdir(filepath)):
            print(file)
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:

0.txt
1.txt
10.txt
100.txt
1000.txt
10000.txt
10001.txt
10002.txt
10003.txt
10004.txt
.....
Run Code Online (Sandbox Code Playgroud)

这不是我想要的,我想要它按正常升序排列:

0.txt
1.txt
2.txt
3.txt
4.txt
...
Run Code Online (Sandbox Code Playgroud)

有谁知道如何做到这一点?

python sorting operating-system

0
推荐指数
1
解决办法
7093
查看次数