【求助】怎们用FTPlib上传整个目录,急!!!

【求助】怎们用FTPlib上传整个目录,急!!!

在教程中我看到怎么上传一个文件,但现在我想上传整个目录的话该怎么做,是不是要先读出有哪些文件,软后一个一个传?
好像实现起来很复杂呀,有写好的代码吗?
先谢谢了
一个个传也不麻烦吧?
可是如果是多层目录呢,太多的文件该怎么办?
有写好的上传目录的lib吗?
先遍历本地目录,可能使用os.walk或os.path.walk,两者略有差异。然后对每个文件或目录决定是上传还是创建目录。好象还没有简单的自动上传的模块。
按照limodou 的思路写的,没有测试不知道能不能工作
from ftplib import FTP
import os
ftp=FTP('')
for d in os.walk('g:/test'):
    ftp.mkd(d[0])
    ftp.cwd(d[0])
    for cdir in d[1]:
        ftp.mkd(cdir)
    for f in d[2]:
        ftp.ftp.storbinary(f)
差不多,可能再加上错误处理就差不多了。比如后台已经有目录存在会不会报错。这个试一试就知道了。
非常感谢luffy.deng的支持!
很简洁的代码!

好像有一点小问题:粗体的创建目录不需要,前面已经建好了
from ftplib import FTP
import os
ftp=FTP('')
for d in os.walk('g:/test'):
    ftp.mkd(d[0])
    ftp.cwd(d[0])
    for cdir in d[1]:
        ftp.mkd(cdir)
    for f in d[2]:
        ftp.ftp.storbinary(f)


十分感谢!
子目录还是要建吧?每次子目录中第一个建重复了,加上已有目录创建错误处理就行了
d[0]好像是一个目录结构,eg:"d[0] == AB_8_5_0\folder", 那mkd(d[0])就会出错,怎么只得到后面的目录名呢?
请问这个错误处理怎么做才好呢,呵呵,我是个菜鸟,请多多指点!