cari

Rumah  >  Soal Jawab  >  teks badan

新手:pycharm使用创建directory和Python package的区别??

新手,刚学了2天Python 发现很有趣,有个问题想问下

如图:d.py在ssffe模块module中 c.py在一个名字为tesat的文件夹directory中
临时建立的,名字随便打的别介意。。
在d.py中
print 'dddd'

在c.py中
from ssffe import d
print 'cccc'

执行c.py 输出:
dddd
cccc

问题:我想在d.py中引用 c.py
发现用语句 from tesat import c 程序报错

即导入系统中其他目录的Python文件

导入语句怎么写
写了很多仍然报错

PHPzPHPz2887 hari yang lalu702

membalas semua(3)saya akan balas

  • PHPz

    PHPz2017-04-17 17:32:15

    Direktori ialah direktori Pycharm akan berfikir bahawa ia mungkin menyimpan beberapa sumber anda, seperti css/js, atau beberapa fail konfigurasi tiada __init__.py di dalamnya, dan pakej akan mencipta __init__ fail python anda yang manakah boleh dilihat oleh dunia luar.
    Atau anda boleh memahaminya dengan cara ini, keterlihatan Python pada peringkat fail atau peringkat nama kelas diwakili oleh __2 garis bawah Untuk keterlihatan fail, ia diterangkan oleh __init__.py yang ditakrifkan dalam pakej

    A ialah Direktori yang anda nyatakan
    B ialah pakej dengan __init__.py di dalamnya
    Jika anda tidak mahu menambah __init__.py kepada A untuk menjadikannya pakej,
    tambahkannya secara manual pada kod Tambah direktori A secara dinamik ke sys.path
    Dengan cara ini, apabila python mengimport modul, ia akan memuatkan modul yang ditentukan dalam susunan senarai sys.path
    Dengan cara ini, anda daripada Apabila API import foo, fail python di bawah A akan ditemui

    Pelaksanaan API.py

    # -*- coding: utf-8 -*-
    
    
    def foo():
        print "foo called"

    balas
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:32:15

    Tiada siapa yang menjawab?

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:32:15

    Direktori ialah direktori biasa; pakej ialah direktori dengan fail __init__.py, yang berkaitan dengan mekanisme import python
    Adalah disyorkan untuk melihat modul tutorial python Bab 6 (tersedia selepas pemasangan, atau pergi ke laman web rasmi, jika anda tidak mahu membaca dokumentasi python Cina dalam bahasa Inggeris).

    balas
    0
  • Batalbalas