map={"a":5, "b":2, "c":7, "d":5, "e":5}
Run Code Online (Sandbox Code Playgroud)
输出应该是:
['c', 'a', 'd', 'e', 'b']
Run Code Online (Sandbox Code Playgroud)
因此,代码应首先按其值按降序排列字典,然后如果其值相同,则应按键按升序排序.到目前为止我有......
newmap=map
newmap=sorted(newmap.iteritems(), key=operator.itemgetter(1,0),reverse=True)
print newmap
Run Code Online (Sandbox Code Playgroud)
这给了我输出[('c', 7), ('e', 5), ('d', 5), ('a', 5), ('b', 2)].所以,我需要按升序获得e,d,a ...而不会弄乱各种数字.我该怎么做呢?
我有一个字符串,我需要从中删除某个字符,我已经能够做到这一点,但我仍然有问题。我去掉了字符,但字符串的长度保持不变。
public class HelloWorld{
public static void main(String []args){
String data = "Hello World";
System.out.println(data);
System.out.println("string length: " + data.length());
char letter = 'l';
data = data.replace(letter, '\0');
System.out.println(data);
System.out.println("string length: " + data.length());
}
}
Run Code Online (Sandbox Code Playgroud)
这给了我输出:
Hello World
string length: 11
Heo Word
string length: 11
Run Code Online (Sandbox Code Playgroud)
我需要它是:
Hello World
string length: 11
Heo Word
string length: 8
Run Code Online (Sandbox Code Playgroud)
为什么它似乎在计算字符串中不再存在的字符?