而不是像这样定义<div>
<ul>
<li (click)="retriveExtraMarker(some_latlon)">Place One</li>
<li (click)="retriveExtraMarker(some_latlon)">Place Two</li>
</ul>
</div>
<div>
<div>
<!-- I would like to add more markers dinamically here -->
<sebm-google-map [zoom]="zoom" [latitude]="lat" [longitude]="lng">
<sebm-google-map-marker *ngFor="let item of items | async" [latitude]="item.latitude" [longitude]="item.longitude">
</sebm-google-map-marker>
</sebm-google-map>
</div>
</div>
......
documents
...我想从两个不同的txt文件中读取相同的三个句子,第一个文件中的第一个句子,第二个文件中的第2个和第3个句子。
我已经提出了这个代码:
documents = ["the mayor of new york was there", "machine learning can be useful sometimes","new york mayor was present"]
但这两种策略产生的# read txt documents
os.chdir('text_data')
documents = []
for file in glob.glob("*.txt"): # read all txt files in working directory
file_content = open(file, "r")
lines = file_content.read().splitlines()
for line in lines:
documents.append(line)
似乎有不同的格式。我希望第二种策略能够产生与第一种策略相同的输出。
答案 0 :(得分:1)
如果我正确理解你的代码,这是等效的,性能更高(不将整个文件读入字符串,然后拆分为列表)。
os.chdir('text_data')
documents = []
for file in glob.glob("*.txt"): # read all txt files in working directory
documents.extend( line for line in open(file) )
或者甚至可能是一行。
documents = [ line for line in open(file) for file in glob.glob("*.txt") ]
答案 1 :(得分:0)
您可以使用.read().splitlines()
而不是.readlines()
。这会将每个文件的内容放入一个列表中。
答案 2 :(得分:0)
...我想从两个不同的txt中读出相同的三个句子 第一个文件中第一个句子的文件,以及第2和第3个句子 在第二个文件中。
直接翻译要求:
with open('somefile1.txt') as f1:
lines_file1 = f1.readlines()
with open('somefile2.txt') as f2:
lines_file2 = f2.readlines()
documents = lines_file1[0:1] + lines_file2[1:3]
FWIW,鉴于您正在做的工作,[fileinput module][1]
可能会有所帮助。
希望这会让你重新开始工作: - )