python读取文件夹中的文件,是按照什么排序的,为什么12排在1前面?

如题,

In [61]: file_names
Out[61]:
['MgCa_45deg_halfdeg_0_t200.xlsx',
'MgCa_45deg_halfdeg_10_t200_com.xlsx',
'MgCa_45deg_halfdeg_11_t200_com.xlsx',
'MgCa_45deg_halfdeg_12_t200_com.xlsx',
'MgCa_45deg_halfdeg_13_t200_com.xlsx',
'MgCa_45deg_halfdeg_14_t200_com.xlsx',
'MgCa_45deg_halfdeg_15_t200_com.xlsx',
'MgCa_45deg_halfdeg_1_t200_com.xlsx',
'MgCa_45deg_halfdeg_2_t200_com.xlsx',
'MgCa_45deg_halfdeg_3_t200_com.xlsx',
'MgCa_45deg_halfdeg_4_t200_com.xlsx',
'MgCa_45deg_halfdeg_5_t200_com.xlsx',
'MgCa_45deg_halfdeg_6_t200_com.xlsx',
'MgCa_45deg_halfdeg_7_t200_com.xlsx',
'MgCa_45deg_halfdeg_8_t200_com.xlsx',
'MgCa_45deg_halfdeg_9_t200_com.xlsx']

0

6个回答

不是12在1前面,是2在'_'前面

0

文件排序都是按字符串来的,不会特意给你分成数字

0

它是按文件中字符在ascii码中的顺序来排的,并且将字符串中每个字符作比较,你上面的 11和1_的问题,1相同,而后一位1在_前面,若你换成减号-那它就在1前面,或者你将序号放在最后,那排序就正常了,这就是按中间字符排序会出现乱七八糟问题的原因

0

按照字符串排序的,可以将符号放到最后,或者按照_ 前面的字符排序

0

根据左边第一个排,拍完再按第二个
所以你这个问题的解释,同1楼,因为2在“”前。

0

按照文件流读取。你这是因为操作系统给你的文件进行了排序,字符和数字按照ascii码表排序

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
PHP读取文件排序:解决文件名排序10排在2前面的问题
windows资源浏览器是这样显示文件的排序: 可是PHP读取本地文件到一个数组,然后打印出来是这样排序的: 解决方法: 对数组进行排序后输出 asort($allFiles, SORT_STRING | SORT_FLAG_CASE | SORT_NATURAL); var_dump($allFiles); 排序后输出的结果: ...
SQL——为什么 10,11 这些会排在 2 的前面?
都是字符类型的,比较的时候当然是'10'<'2' 解决方法:可以左填充0 SELECT id,Name FROM  tab_name ORDER BY LPAD(id,'0',10)
sql 排序将为0的放在前面
现在由于项目不断升级很多,数据库设计难免会存在业务上的不合理在所难免,比如某字段有三种形式-1,0,1 ,-1表示未发布,0表示未审核,1表示审核,现在要求我们根据这个字段排序,未审核的排在最上面,但是字段存储的-1,0,1,正排序,倒排序,都满足不了0在最上面,百度了一下,还是找得到解决方案的,sql如下: SELECT [大题型编号] ,[大题型名称] ,[大题型数]
redis服务器---• 若干个学生同时进行行考试,考试时间为1小时 • 满分为100分 • 按成绩排名 • 若成绩相同,则先交卷者排名靠前
• 若干个学生同时进行行考试,考试时间为1小时• 满分为100分• 按成绩排名• 若成绩相同,则先交卷者排名靠前In [2]:import timeimport randomimport redisimport fakerfrom datetime import datetime, timedelta​r = redis.Redis()f = faker.Faker('zh_CN')​DEAD_L...
python中os.listdir( )函数读取文件夹下文件的乱序和排序问题
1. os.listdir()概述    os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。例如:    dir ='F:/Home_01/img'#当前目录    filenames=os.listdir(dir)#filenames存储dir下的所有文件名。    注意:os.listdir()返回的文件名不一定是顺序的,也就是说结果是不固定的,如下图,则fil...
mysql按照每天分组查询数据结果排序不是从1到31而是1后接10
今天拉数据发现个问题,我按照每月的每天来查询数据后发现数据排序是不能从1-31的排序规则排序的,而是1后接10-19,然后2后接20-29,很奇怪的现象,上图: 代码为:select count(*) as 激活数,DATE_FORMAT(a.active_time,'%e') as 日期 from  app_ads_record a where DATE_FORMAT(a.activ
python顺序的读取文件夹下名称有序的文件
import os path="/home/test/" #待读取的文件夹 path_list=os.listdir(path) path_list.sort() #对读取的路径进行排序 for filename in path_list: print(os.path.join(path,filename))
将list里面的一些字符串重新排序 将自己要的排在前面
protected void rankContact(String phone,int index) { for(int i=0;i<contactModelList.size();i++) { ContactsModel tempModel=contactModelList.get(i); if(tempModel.ContactPhone.equals(phone)==tr
Java实现某个文件夹下文件和文件夹排序
import java.io.File; import java.util.Collections; import java.util.Comparator; import java.util.List; public class Demo13 {     public static void main(String[] args) {         List&amp;lt;File&amp;gt; li...
oracle 排序是,如果为null, 降序则排在最前面,怎么让这些null值排在最后面。 Nulls last
oracle 排序是,如果为null, 降序则排在最前面,怎么让这些null值排在最后面
Python 读取文件夹下文件列表 自然排序
Python 读取文件夹下文件列表  自然排序 import fnmatchimport osa_list = fnmatch.filter(os.listdir('F:/image'), '*.png') >>> import natsort >>> natsort.natsorted(a_list) That's all!
python 按普通字典排序(小写字母,排在大写字母前)
str.sort(key=str.lower) spam = ['a','z','A','C'] spam.sort() print(spam) spam.sort(key=str.lower) print(spam)
一个未排序整数数组,有正负数,重新排列使负数排在正数前面,并且要求不改变原来的正负数之间相对顺序,比如: input: 1,7,-5,9,-12,15 ans: -5,-12,1,7,9,15 要求时
#include using namespace std; void txsort(int* arr, int len) { if (!arr || len == 1) { return; } int negCount = 0; for (int i = 0; i < len; ++i) { if (arr[i] < 0) { negCount++; } } i
关于对数据库查询结果排序时,将特定的某个值排在最前面的问题
应用场景 前台传入一个查询字段id,要求查询后返回的结果中,该name所在的数据在第一行,其他数据行按照正常的字典序排序。 解决方法 在order by语句中,使id字段等于前台传入的值,则整个表达式会作为排序的依据,如前台传入2: 则结果会先将id=2的数据输出,其他行则按字典顺序或其他排序字段的顺序列出。 ...
【数组】根据字典顺序打印1~N之间的所有数
题目:给出一个正整数N,根据字典顺序返回1~N间的所有数。  【LeetCode 386】 比如,输入N= 13,返回: [1,10,11,12,13,2,3,4,5,6,7,8,9].  注意:输入的N最大可以达到5000 000,所以需要优化算法使其在时间和空间上尽可能地高效。  ...
将一个数组里面的奇数全部排在前面,偶数排在后面
将一个数组里面的奇数全部排在前面,偶数排在后面 void paixu(int dest[], int n, int src[]) { int i = 0, m = n-1, k = 0; if (0 >= n) { return ; } for (i = 0; i < n; i++) { if (
Mybatis 时间排序让空值NULL排在后面
有一张通知(notification)表; 需求: 1.状态(status)为发布“on”要排在未发布“off”前面; 2.先按发布时间排序再按创建时间排序,发布时间为空的要排在后面。 select * from notification; id content status create_time publiish_time 1 aaa on ...
matlab读取文件顺序排序问题。10 1 2出错问题。
来源nature order sort 如题,最近用matlab处理数据,自动读取n个txt的时候,突然发现一个bug。 比如windows下命名是这样的。 wz1 wz2 wz3......wz10 wz11 .....wz100.. 最初的时候我用了dir来读取文件。得到了直接进行运算。 但是发现读取的顺序是。 1 10 100 11 12 。。。。总之就是完全按照string排序
对一个字符串重新排列要求字母在钱数字在后,且不改变字母数字间的原有顺序
#include<stdio.h> #include<string.h> int main() { char a[100]; char b[100]; char c[100]; int n,i,x=0,y=0; scanf("%s",a); n=strlen(a); for(i=0;i<n;i++) { if(a[i]>=48
python 获取文件夹中指定格式文件,并按照创建时间排序
python 获取指定文件夹中的指定格式文件,例如.txt,然后按照创建时间(也可以是其他排序规则),按顺序输出文件名。
python中按照文件夹中文件的排列顺序读取文件内容
在处理数据的过程中,文件夹下的文件有时候按照一定的规律命名,按照要求,有时需要将文件夹中的文件按照原始的顺序读取:假设文件目录如图所示: 按照: base_path = r'E:\download\generator\result' files = os.listdir(base_path) 返回的files列表会打乱文件的顺序,结果是不固定的。 需要对文件列表进行排序才可以: ...
文件夹排序(先文件夹排序,后文件排序)
public static void sortFiles(File[] files) { Arrays.sort(files, new Comparator<File>() { @Override public int compare(File lhs, File rhs) { //返回负数表示o1 小于o
Python中sorted()排序与字母大小写的问题
今天我在练习python时,对字典里的键用sorted排序时发现并没有按照预期排序 研究后发现字母大小写会影响排序 首先创建一个字典,键里面的首字母有大写有小写 favorite_digit = { 'john' : 4, 'Tom' : 5, 'Lisa' : 9, 'liu' : 5, 'alice' : ...
简易的实现中文按字母排序且中文在前英文在后
对于Comparator相信大家都不陌生,用于排序的比较器,但是原本的compare 只能比较基本类型与英文字符串,中文的并不识别。 这个时候就需要我们自己定义一个中文语言环境的比较器。上代码(kotin代码) //创建中文环境的Comparator class SortChineseName():Comparator&amp;lt;BrandsModel&amp;gt; { val chinaC...
用CFindFile()读取文件下的图片,当图片名为数字时,不按照顺序读取的情况
很多情况下,批处理图片后,会得到一系列的图片名称。比如说,我们对一幅图像进行旋转,最后得到360张旋转的图片。我们在命名输出的360张图片时,可以这样:int m_nPicSum;//是图片的总数量,这里举例为360张 for(int i=0;i<m_nPicSum;i++) { //这个是文件头,一般是我们选择输出的文件夹的名,例如为F:\\res //为什么用双\,因为是单\表示转义,不能这么用
使用Python对文件名进行排序
经常在Linux下操作文件,要对一组文件名保存起来使用的时候,需要排序,但是文件名是字符串,自然排序结果会出现这种问题: 源数据: 5.rb 2.rb 201.rb 51.rb 7.rb 4.rb 系统提供的排序方法结果是这样的: 2.rb 201.rb 4.rb 5.rb 51.rb 7.rb 这明显是不对的,201当然应该排在最后,只是当成字符串来处理,就会有这样的问题,所以用Pyt
mysql指定某一字段中的 某一个值排序在最前面
mysql指定某一字段中的 某一个值排序在最前面 SELECT * from project where project_status=2 order by (case when task_progress="招标" THEN 1 when task_progress="等待确认" THEN 2 when task...
Python文件名排序或文件排序问题
在读取文件夹里的文件时,有时需要顺序读取文件,那python如何顺序读取文件呢(这些都是楼主实际编程过程中遇到的问题,想把细节记录下来),下面会给出一些参考方式; 特此说明:在编辑本文的时候,楼主也参考了一些文献,如有侵权,联系楼主,本人立马删帖。   在python环境中提供两种排序方案(题主知道的): 用库函数sorted()对字符串排序,它的对象是字符 用函数sort(...
数据结构算法题/将数组中元素奇数排在前面偶数在后面(前面奇数和后面的偶数分别有序)
一个无序整数数组,对它排序,使其前半部分都为奇数有序,后半部分为偶数有序。 (1)方案1 O(n^2) 基本想法:利用插入排序算法,对奇偶子序列分别插入排序。用两个变量把整个数组分割为三个部分,第一个部分为奇数有序子序列,第二部分为偶数有序子序列,第三部分为未排序子序列。使用两个变量进行分割,mid 指向偶数有序子序列的一个元素,end 指向未排序子序列(等待一个个插入前面的奇数有序子序列或偶...
python 奇数位于偶数前面
剑指offer第21题:将奇数位于偶数前面输入一个列表,调整顺序为所有奇数位于偶数前面# _*_encoding:utf-8 _*_class Solution: def reorder(self, lst): """ 把奇数放在偶数前面 """ length = len(lst) if not length:
C#中读取文件夹和文件时,根据文件夹或者文件名调整读取的顺序
当读取文件夹或者文件时,有时会遇到这样一个问题,文件夹或者文件的命名为1,2,3,4,5,6,7,8,9,10,11,12等,在电脑上面显示时,是按照递增的方式,可是当用C#来读取时,默认按照的顺序是1,10,11,12,2,20,21,3,4,5,6,7,8,9,如果对文件顺序要求很严格,这样明显不符合要求。那怎么对这样进行再次排序呢。
MATLAB: 读取同一目录下的所有文件名并按时间排序
用MATLAB测试图像处理算法的过程中,通常需要读入一个目录下的多张测试图片,可以根据文件命名规则来读入某个特定目录下的所有文件,但是相对比较麻烦。通过利用MATLAB自带的dir(),可以先读入所有的文件名字,知道文件数量,而且不用知道文件的命名规律,不仅实现起来更加简单而且可扩展性更强。
python文件名排序:“字符串+数字”形式的文件名称排序脚本
当我们使用os.listdir(rootDir)获得该文件夹下所有文件名称后,会发现其是乱序的,而在大数据处理过程中,我们往往希望可以按照顺序将样本输入进我们的系统。因此需要对包含文件名的list进行排序。 下面是对“字符串+数字”形式的文件名称进行排序的脚本,参考了网络上诸多写法。保存仅供学习交流! #!/usr/bin/env python3 # -*- coding: utf-8 -*...
按编号大小顺序读取图片
方法1: clear all; clc; %names=struct2cell(dir('.\Data\*.bmp'));%结构数组转换为单元数组 filepath='.\Data\'; filename=cell(49,1); for k=1:49 fname=sprintf('quanpinjie1_%d.bmp',k); %将数字k转换为类型‘quanpinjie1_k.b...
python查找指定文件夹下所有文件并按修改时间倒序排列
代码如下:import os, glob, timedef search_all_files_return_by_time_reversed(path, reverse=True): return sorted(glob.glob(os.path.join(path, '*')), key=lambda x: time.strftime("%Y-%m-%d %H:%M:%S", time.l
elasticsearch某一字段值等于某字符串时优先排序问题
使用script { "query": { "term": { "name": "刘" } }, "sort": [ { "_script": { "type": "number", "script": "doc['type.keyword'].value=='male'?0:1", "...
MYSQL 升序排序但值为0的排最后
如一张表的数据如下: 需要根据gz列的值进行升序排序,但值为0的排在最后面,即最终结果如下图: 具体 实现方法如下: 1.Order BY表达式 SELECT nian ,gz from Tbl ORDER BY gz!=0 desc,gz 2.算术法 SELECT nian ,gz,1/gz as od from Tbl ORDER BY od desc
获取所有集合,并且让默认值排在第一个,其他的按照时间倒叙
if(flag.intValue()==2){ Address address=new Address(); address.setUserId(Long.valueOf(recev.getUserId())); AddressVo add= addressMapper.selectAddressByDefault(address);//获取默认 ArrayList&amp;lt;Addr...
oracle使用order by 排序 null 值排到最前的问题
Oracle排序DESC的时候NULL值排在最前面 1.指定Nulls first 则表示null值的记录将排在最前(不管是asc 还是desc) 2.指定Nulls last 则表示null值的记录将排在最后(不管是asc 还是desc) select * from 表 order by ID (asc/desc) nulls first------&amp;amp;gt;null 值排在最前面 sele...
直接按文件夹内的顺序处理 matlab
clear all folders=dir('F:\TrafficSignDetection\Datasets\Traffic Datasets\GTSRB\Training_Datasets\GTSRB_Final_Training_Images\Final_Training\Images\'); folders={folders.name}; folders=setdiff(folder