KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a dictionary that I've converted to a list so I can sort by the first item. The key in the dictionary is a string (of numbers), the value is an integer which is maintained in the list. The list from the dictionary conversion looks like: [('228055', 1), ('228054', 1), ('228057', 2), ('228056', 1), ('228051', 1), ('228050', 1), ('228053', 1), ('203184', 6), ('228059', 1), ('228058', 1), ('89370', 2), ('89371', 3), ('89372', 2), ('89373', 1), ('89374', 1), ('89375', 1), ('89376', 1), ('89377', 1), ('89378', 1), ('89379', 1),.........] There are around 240,000 items in the dictionary. I would like to sort the dictionary by the first index, but when I use itemgetter(0) it sorts the list by all the "1's" first. The sorted listed looks like: [('0', 3), ('1', 3), ('10', 3), ('100', 4), ('1000', 3), ('10000', 1), ('100000', 3), ('100001', 2), ('100002', 3), ('100003', 3), ('100004', 2), ('100005', 2), ('100006', 2), ('100007', 2), ('100008', 2), ('100009', 2), ('10001', 1), ('100010', 3), ('100011', 3), ('100012', 3), ('100013', 2), ('100014', 1), ('100015', 1), ('100016', 1), ('100017', 1), ('100018', 1), ....] I would like the list to be sorted by ['0', 3), ('1', 3), ('2', integer), ('3', integer),...('240,000', integer)] Here's my code where I'm reading in a text file to a dictionary, converting to a list and used itemgetter to sort by first item in nested list. I need the dictionary in the code because I heavily depend on it to look up values by the key. I'm only trying to sort the dictionary for the output file once all the processes are ran. Thanks for any help. import sys, string, csv, arcpy, os, fileinput, traceback from arcpy import env from operator import itemgetter #Creating a dictionary of FID: LU_Codes from external txt file text_file = open("H:\SWAT\NC\FID_Whole_Copy.txt", "rb") #Lines = text_file.readlines() FID_GC_dict = dict() reader = csv
Tags (comma-separated)
Save Edits
Cancel