2015-10-15 126 views
-1

我有一個文件名爲FILE1.TXT,其內容是這樣的:Python腳本,將一個字符串映射到另一個字符串

FILE1.TXT

Python是一種通用的,解釋的,互動的,面向對象和高級編程語言。 Python由Guido van Rossum在八十年代和九十年代初在荷蘭國家數學和計算機科學研究所開發。 Python源自許多其他語言,包括ABC,Modula-3,C,C++,Algol-68,SmallTalk和Unix shell以及其他腳本語言。 Python受版權保護。像Perl一樣,Python源代碼現在可以在GNU通用公共許可證(GPL)下獲得。

我想映射一個字符串爲例如。將文件中的第三個句子添加到另一個字符串中,例如 - 「Python被設計爲易讀性強,頻繁使用英語關鍵字」。

這個映射如何在python中完成?我知道該字典相當於Python中的hashmap,但可以使用dictionary來將1個字符串映射到另一個字符串?

我想是這樣的:

f=open("log5.txt") 
dict = {'f.readline()': 'Python was designed to be highly readable which uses English keywords frequently'} 
print(f.readline()) 
print(dict['f.readline()']) 

但上面的程序映射的第一句話,也沒有任何更好和更有效的方式來寫上面的程序???

回答

0

好吧,2簡單的解決方案:.split(...)re.(...)

text = "Python is ... License (GPL)." 

# add back the periods, this isn't the most efficient way (use regex or a tokenizer for better results but this works) 
def add_periods(sentences) 
    return [sentence + "." for sentence in periodless_sentences] 

# i have no idea why you'd want to do this 
def map_to_sentence_index(sentences): 
    return {i: (s + ".") for (s, i) in enumerate(sentences)} 

# split 
periodless_sentences = str.split('. ') 

# regex 
import re 
sentences = re.split(r' *[\.\?!][\'"\)\]]* *', text) 

在蟒蛇map意味着map(func, lst)其中func是要適用於lst每個元素的一些功能。這不是你所描述的。 map是保留關鍵字。

map(len, ["a", "bb", "ccc"]) => [1, 2, 3] 

老實說,你的問題在Python的上下文中沒有什麼意義,並且看起來是從教科書複製粘貼的。請不要使用stackoverflow作爲功課解決方案網站。這就是說,這裏的解決方案大聲笑

相關問題