如何在Python中创建一个包含2个字符串键的字典来访问整数?

时间:2016-03-12 19:28:23

标签: python dictionary

我是Python的新手,我正在尝试创建一个包含2个字符串键的2D字典。一个键表示起始位置,另一个键表示结束位置。返回值必须是一个整数,表示这两个城市之间的距离。

例如,如果我有:

dict['New York']['Chicago']

我想返回表示这两个城市之间距离的整数。

我已经解析了文本文件中的所有位置和距离,但是当我读取每个值时,我不知道如何为这3个组件中的每一个设置字典值。

正在按顺序接收输入:开始,完成,距离。重复此过程直到文件结束。任何帮助将不胜感激。谢谢!

3 个答案:

答案 0 :(得分:1)

您可以使用一个字典,其键是起点,其值是字典,其键是目的地,其值是距离。

jQuery(function($) {

    $(document).ready(function(){
    // Youtube

        $('a.thumbs[href^="http://www.youtube.com"], a.thumbs[href^="http://youtu.be"],a.thumbs[href^="http://youtube.com"]').each(function (index, value){
            console.log(value);
            var video_id = this.href.split('v=')[1];
            console.log(video_id);
            this.innerHTML = '<div class=\"youtube_container\"><div class=\"youtube_thumb image\"><img src=\"http://img.youtube.com/vi/'.concat(video_id).concat('/1.jpg\"></div><div class=\"youtube_overlay image\"><img src=\"/sites/all/themes/mycompany/images/video-overlay.png\"></div></div>');
        });
    });
});

答案 1 :(得分:1)

以下是创建此方法的两种方法。首先,传统的var clicked = false, clickY; $(document).on({ 'mousemove': function(e) { clicked && updateScrollPos(e); }, 'mousedown': function(e) { clicked = true; clickY = e.pageY; }, 'mouseup': function() { clicked = false; $('html').css('cursor', 'auto'); } }); var updateScrollPos = function(e) { $('html').css('cursor', 'row-resize'); $(window).scrollTop($(window).scrollTop() + (clickY - e.pageY)); }

dict

或使用defaultdict

dic = {}
dic['New York'] = {}
dic['New York']['Chicago'] = 25

答案 2 :(得分:1)

这样做:

dictionary = {}
for start, finish, distance in mylist:
    dictionary.setdefault(start, {})[finish] = distance

使用dictionary.setdefault(start, {})将返回索引start的值。如果它不存在,它会创建一个并将其放入该索引中。然后,我们将索引finish处的字典设为等于distance