相关文章推荐
想旅行的凉面  ·  python ...·  1 年前    · 
活泼的大葱  ·  硕士生导师·  1 年前    · 
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams
for keys, values in CountWords.items():
    val = values
    print("%s: %s \t %s: %s" % (keys, val, keys, val))

When this is printed it will output this the key and its value and then after a space the same thing. What I want to know is if I can get the second %s: %s to select the next key and value from the dictionary.

Be aware that results can differ per python implementation. Dictionary's are not explicitly ordered until python3.7, so referring to the next item could be unambiguous: stackoverflow.com/questions/39980323/… – acidjunk Aug 22, 2019 at 7:19 It's not clear how you wanted this to work: the second time through the list, should it use the second and third key-value pairs (overlapping adjacent pairs)? Or the third and fourth (iterating in chunks of size 2)? Either way, this is a common problem with a better canonical duplicate. Keep in mind that any "lazy" technique for iterating over a list will generally apply to any iterable, such as a dict's .items in 3.x (or .iteritems in 2.x). – Karl Knechtel May 5 at 2:47

Instead of trying to get next k-v pair, you can keep current k-v pair and use them on the next iteration

d = {'foo': 'bar', 'fiz': 'baz', 'ham': 'spam'}
prev_key, prev_value = None, None
for key, value in d.items():
    if prev_key and prev_value:
        print("%s: %s \t %s: %s" % (prev_key, prev_value, key, value))
    prev_key, prev_value = key, value
fiz: baz     foo: bar
foo: bar     ham: spam
                items() returns a list, You can use an index to get the i-th element and then i-th + 1 element, but You must pay attention to the length of the list.
– Filadelfo
                Mar 31, 2015 at 13:27