gpt4 book ai didi

Linux 排序不适用于负 float

转载 作者:IT王子 更新时间:2023-10-28 23:57:16 25 4
gpt4 key购买 nike

如何对这种输入进行排序?

0.00159265291648695254
-0.00318530179313823899
0
0.00999983333416666468
0.00362937767285478371
0.00477794259012844049
-0.00637057126765263261
0.00681464007477014026
-0.00840724736714870645
-0.00522201549675090458

无论是 sort -n data 还是 sort -g data 都会产生这个:

0
0.00159265291648695254
-0.00318530179313823899
0.00362937767285478371
0.00477794259012844049
-0.00522201549675090458
-0.00637057126765263261
0.00681464007477014026
-0.00840724736714870645
0.00999983333416666468

另一方面,-1.whatever 会在零前面。我需要排序来注意减号。谢谢。

最佳答案

所有这些麻烦都影响了我的本地设置。我的 ubuntu 使用捷克语:

$ echo $LANG
cs_CZ.UTF-8

在此本地设置中,它不是小数点,而是将整数与其余部分分开的十进制逗号(正如我们在数学课上所认为的那样,在我们的语言中,我们确实写逗号而不是点)。

因此:

echo '0,03 >> 0,4 >
> -0,3 >
> 0' | sort -n
> 0
> -0,3 >
> 0,4 >
0,03 >

如果您正在编写 bash 脚本,请将排序例程设置为使用“正常”设置。

export LC_ALL=C

关于Linux 排序不适用于负 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10031156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com