相关疑难解决方法(0)

使用'for'循环迭代字典

我对以下代码感到有点困惑:

d = {'x': 1, 'y': 2, 'z': 3} 
for key in d:
    print key, 'corresponds to', d[key]
Run Code Online (Sandbox Code Playgroud)

我不明白的是这个key部分.Python如何识别它只需要从字典中读取密钥?keyPython中是一个特殊的词吗?或者它只是一个变量?

python dictionary python-2.7

2901
推荐指数
13
解决办法
411万
查看次数

迭代器,迭代和迭代究竟是什么?

Python中"iterable","iterator"和"iteration"的最基本定义是什么?

我已阅读多个定义,但我无法确定其确切含义,因为它仍然不会沉入其中.

有人可以帮助我解释外行人的3个定义吗?

python iteration iterator iterable terminology

408
推荐指数
10
解决办法
29万
查看次数

for/in循环结构是否保留顺序?

普通的for/in语句是否保证列表按顺序迭代?

my_list = [5,4,3,2]
for i in my_list
    print(i)
Run Code Online (Sandbox Code Playgroud)

也就是说,上面的循环是否保证5 4 3 2每次打印?

python

16
推荐指数
3
解决办法
1万
查看次数

一组上的Python迭代顺序

我正在解析两个大文件(Gb大小顺序),每个文件包含keys和对应values.一些keys在两个文件之间共享,但具有不同的对应values.对于每个文件,我想写一个新文件keys*和相应的文件values,keys*表示密钥同时出现在file1和file2中.我不关心key输出中的顺序,但绝对应该在两个文件中的顺序相同.

档案1:

key1
value1-1
key2
value1-2
key3
value1-3
Run Code Online (Sandbox Code Playgroud)

文件2:

key1
value2-1
key5
value2-5
key2
value2-2
Run Code Online (Sandbox Code Playgroud)

有效输出将是:

解析文件1:

key1
value1-1
key2
value1-2
Run Code Online (Sandbox Code Playgroud)

解析文件2:

key1
value2-1
key2
value2-2
Run Code Online (Sandbox Code Playgroud)

另一个有效的输出:

解析文件1:

key2
value1-2
key1
value1-1
Run Code Online (Sandbox Code Playgroud)

解析文件2:

key2
value2-2
key1
value2-1
Run Code Online (Sandbox Code Playgroud)

无效输出(在文件1和文件2不同的顺序键):

解析文件1:

key2
value1-2
key1
value1-1
Run Code Online (Sandbox Code Playgroud)

解析文件2:

key1
value2-1
key2
value2-2
Run Code Online (Sandbox Code Playgroud)

最后一个精度是,值大小远远大于密钥大小.

我想要做的是:

  • 对于每个输入文件,使用与文件中的键对应的键解析并返回a dict(让我们调用它file_index),以及与在输入文件中找到键的偏移量相对应的值.

  • 计算交集

    good_keys = file1_index.viewkeys() & file2_index.viewkeys()
    
    Run Code Online (Sandbox Code Playgroud)
  • 做一些像(伪代码): …

python iteration set python-2.7

-1
推荐指数
1
解决办法
1779
查看次数