Python 如何使第1列和第2列之间的间距相同
我目前正在尝试筛选一个词典,以便它只包含我需要的单词。字典有两栏,第一栏是单词,第二栏是语音(见下图) 词典是可用的Python 如何使第1列和第2列之间的间距相同,python,unix,text,file-handling,Python,Unix,Text,File Handling,我目前正在尝试筛选一个词典,以便它只包含我需要的单词。字典有两栏,第一栏是单词,第二栏是语音(见下图) 词典是可用的 有没有什么方法可以让这个空格/分隔符适用于所有情况。。。这会让事情变得容易得多。你是说像下面这样的事情吗? 在本例中,这是代码(不使用任何特定字符): 你是说像下面这样的? 在本例中,这是代码(不使用任何特定字符): 此空间是一个选项卡,因此您可以轻松地对文件中的行执行:values=line.split('\t'),然后使用值[0]访问单词,使用值[1]访问语音。。我觉得
有没有什么方法可以让这个空格/分隔符适用于所有情况。。。这会让事情变得容易得多。你是说像下面这样的事情吗? 在本例中,这是代码(不使用任何特定字符):
你是说像下面这样的? 在本例中,这是代码(不使用任何特定字符):
此空间是一个选项卡,因此您可以轻松地对文件中的行执行
:values=line.split('\t')
,然后使用值[0]
访问单词,使用值[1]
访问语音。。我觉得自己很愚蠢。它解决了我的问题。非常感谢这个空间是一个选项卡,所以您可以轻松地对文件中的行执行:values=line.split('\t')
,然后访问带有值[0]
的单词和带有值[1]
的语音。。我觉得自己很愚蠢。它解决了我的问题。谢谢
#!/usr/bin/env python2
import sys
path_to_the_file = sys.argv[1]
word = []
pron = []
maxword = 0
with open(path_to_the_file) as fr:
for line in fr:
words = line.split()
word.append(words[0])
pron.append(' '.join(words[1:]))
if len(words[0]) > maxword: maxword = len(words[0])
format_str = '{:'+str(maxword)+'s} {:s}\n'
msg = ''
for w,p in zip(word,pron):
msg += format_str.format(w,p)
print msg