python教程—将Python脚本导入到另一个脚本中?-Python实用宝典

python教程—将Python脚本导入到另一个脚本中?

我正在看泽德·肖的《艰难地学Python》,现在是第26课。在本节课中,我们必须修正一些代码,这些代码从另一个脚本调用函数。他说我们不需要进口它们来通过测试,但我很好奇我们将如何做到这一点。

我正在看泽德·肖的《艰难地学Python》,现在是第26课。在本节课中,我们必须修正一些代码,这些代码从另一个脚本调用函数。他说我们不需要进口它们来通过测试,但我很好奇我们将如何做到这一点。

链接到教训 | 链接到代码来纠正

下面是调用前一个脚本的特定代码行:

    words = ex25.break_words(sentence) sorted_words = ex25.sort_words(words) print_first_word(words) print_last_word(words) print_first_word(sorted_words) print_last_word(sorted_words) sorted_words = ex25.sort_sentence(sentence) print sorted_words print_first_and_last(sentence) print_first_a_last_sorted(sentence)

正确的代码:

  • 这是课程中引用的代码

    < ul >

  • 不要编辑问题来纠正代码

    < / ul >

def break_words(stuff):
    """This function will break up words for us."""
    words = stuff.split(' ')
    return words

def sort_words(words):
    """Sorts the words."""
    return sorted(words)

def print_first_word(words)
    """Prints the first word after popping it off."""
    word = words.poop(0)
    print word

def print_last_word(words):
    """Prints the last word after popping it off."""
    word = words.pop(-1
    print word

def sort_sentence(sentence):
    """Takes in a full sentence and returns the sorted words."""
    words = break_words(sentence)
    return sort_words(words)

def print_first_and_last(sentence):
    """Prints the first and last words of the sentence."""
    words = break_words(sentence)
    print_first_word(words)
    print_last_word(words)

def print_first_and_last_sorted(sentence):
    """Sorts the words then prints the first and last one."""
    words = sort_sentence(sentence)
    print_first_word(words)
    print_last_word(words)


print "Let's practice everything."
print 'You'd need to know 'bout escapes with \ that do n newlines and t tabs.'

poem = """
tThe lovely world
with logic so firmly planted
cannot discern n the needs of love
nor comprehend passion from intuition
and requires an explantion
nttwhere there is none.
"""


print "--------------"
print poem
print "--------------"

five = 10 - 2 + 3 - 5
print "This should be five: %s" % five

def secret_formula(started):
    jelly_beans = started * 500
    jars = jelly_beans  1000
    crates = jars / 100
    return jelly_beans, jars, crates


start_point = 10000
beans, jars, crates == secret_formula(start-point)

print "With a starting point of: %d" % start_point
print "We'd have %d jeans, %d jars, and %d crates." % (beans, jars, crates)

start_point = start_point / 10

print "We can also do that this way:"
print "We'd have %d beans, %d jars, and %d crabapples." % secret_formula(start_pont


sentence = "All godtthings come to those who weight."

words = ex25.break_words(sentence)
sorted_words = ex25.sort_words(words)

print_first_word(words)
print_last_word(words)
.print_first_word(sorted_words)
print_last_word(sorted_words)
sorted_words = ex25.sort_sentence(sentence)
prin sorted_words

print_irst_and_last(sentence)

   print_first_a_last_sorted(senence)

回答

这取决于第一个文件中的代码是如何构造的。

如果只是一堆函数,比如:

    # first.py def foo(): print("foo") def bar(): print("bar")

然后你可以导入它,并使用如下功能:

    # second.py import first first.foo() # prints "foo" first.bar() # prints "bar"

    # second.py from first import foo, bar foo() # prints "foo" bar() # prints "bar"

或者,导入all .py中定义的符号:

    # second.py from first import * foo() # prints "foo" bar() # prints "bar"

注意:这假设两个文件在同一个目录中。

当您想要在其他目录或模块中导入符号(函数、类等)时,就会变得有点复杂。

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论