Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Sort by Extension by NuMtA47
def sort_by_ext(files: list[str]) -> list[str]:
# your code here
for i in range(len(files)):
name=''
extension=''
text=''
for j in range(len(files[i])):
if files[i][j]=='.' and j==0:
text=text+files[i][j]
elif files[i][j]=='.':
text=text+files[i][j]
name=name+text
text=''
else:
text=text+files[i][j]
if name=='':
name=name+text
text=''
extension=text
files[i]=extension+' '+name
files=sorted(files)
ans=[]
for i in range(len(files)):
files[i]=files[i].split(' ')
ans.append(files[i][1]+files[i][0])
return ans
print("Example:")
print(sort_by_ext(["1.cad", "1.bat", "1.aa", ".bat"]))
# These "asserts" are used for self-checking
assert sort_by_ext(["1.cad", "1.bat", "1.aa"]) == ["1.aa", "1.bat", "1.cad"]
assert sort_by_ext(["1.cad", "1.bat", "1.aa", "2.bat"]) == [
"1.aa",
"1.bat",
"2.bat",
"1.cad",
]
assert sort_by_ext(["1.cad", "1.bat", "1.aa", ".bat"]) == [
".bat",
"1.aa",
"1.bat",
"1.cad",
]
assert sort_by_ext(["1.cad", "1.bat", ".aa", ".bat"]) == [
".aa",
".bat",
"1.bat",
"1.cad",
]
assert sort_by_ext(["1.cad", "1.", "1.aa"]) == ["1.", "1.aa", "1.cad"]
assert sort_by_ext(["1.cad", "1.bat", "1.aa", "1.aa.doc"]) == [
"1.aa",
"1.bat",
"1.cad",
"1.aa.doc",
]
assert sort_by_ext(["1.cad", "1.bat", "1.aa", ".aa.doc"]) == [
"1.aa",
"1.bat",
"1.cad",
".aa.doc",
]
print("The mission is done! Click 'Check Solution' to earn rewards!")
Aug. 28, 2023