Hai*_*iro 2 python variables numbers docx
我正在尝试对docx文件进行一些编辑...将数字转换成字母(即如果变量等于01 ='one',等于02 ='two',依此类推,但是用西班牙语).问题是变量f_dia_nom不起作用......它甚至不打印任何东西......我做错了什么?还是我错过了什么?
#!/usr/bin/env python2.6
from Tkinter import *
from docx import *
import tkMessageBox
root = Tk()
nombre = ""
exp_no = ""
ubic = ""
munic = ""
prov = ""
f_dia = ""
f_dia2 = ""
f_dia_nom = ""
def nombre_dia():
if f_dia2 == 1 or f_dia2 == 01:
f_dia_nom = "Un"
elif f_dia2 == 2 or f_dia2 == 02:
f_dia_nom = "Dos"
elif f_dia2 == 3 or f_dia2 == 03:
f_dia_nom = "Tres"
elif f_dia2 == 4 or f_dia2 == 04:
f_dia_nom = "Cuatro"
elif f_dia2 == 5 or f_dia2 == 05:
f_dia_nom = "Cinco"
elif f_dia2 == 6 or f_dia2 == 06:
f_dia_nom = "Seis"
elif f_dia2 == 7 or f_dia2 == 07:
f_dia_nom = "Siete"
else:
f_dia_nom = "Error"
# Hacer el docx
def makedocx():
if __name__ == '__main__':
# Default set of relationshipships - these are the minimum components of a document
relationships = relationshiplist()
# estructura del documento
document = opendocx('test.docx')
docbody = document.xpath('/w:document/w:body',namespaces=nsprefixes)[0]
# Buscar y reemplazar
print 'Replacing ...',
docbody = replace(docbody,'V_EXP',en1.get())
docbody = replace(docbody,'V_NOMBRE',en0.get())
docbody = replace(docbody,'V_OPERACION',op.get())
docbody = replace(docbody,'V_UBIC',en3.get())
docbody = replace(docbody,'V_MUNI',en4.get())
docbody = replace(docbody,'V_PROV',en5.get())
docbody = replace(docbody,'V_F_DIA',en6.get())
docbody = replace(docbody,'V_F_MES',mes.get())
docbody = replace(docbody,'V_F_SEM',sem.get())
docbody = replace(docbody,'V_NUM_DIA',en7.get())
nombre_dia()
docbody = replace(docbody,'V_NOM_DIA',f_dia_nom)
print 'f_dia_nom'
print 'done.'
Run Code Online (Sandbox Code Playgroud)
查看python的'全局范围'规则.一般来说,尽量避免使用全局变量(如果只是为了避免这些错误)
在nombre_dia()中:
f_dia_nom = "Un"
Run Code Online (Sandbox Code Playgroud)
或者任何其他任务,python编译器将该数字创建为nombre_dia函数的LOCAL.
修改你的函数以将f_dia_nom声明为全局:
def nombra_dia():
global f_dia_nom
...
Run Code Online (Sandbox Code Playgroud)
它将使nombre_dia将f_dia_nom视为全局
学习Python第4版第408页
| 归档时间: |
|
| 查看次数: |
183 次 |
| 最近记录: |