Domanda
voglio sapere, il formato del risultato di xlrd.
Vedi il codice
>>> sh.cell_value(rowx=2, colx=1)
u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx'
Ora, quando provo a eseguire un file res.search
>>> temp1=sh.cell_value(rowx=2, colx=1)
>>> x=re.search("Adam",'temp1')
>>> x.group()
Traceback (most recent call last):
File "<pyshell#58>", line 1, in <module>
x.group()
AttributeError: 'NoneType' object has no attribute 'group'
Non ottengo nulla.
- Per prima cosa voglio sapere qual è la "u" con il risultato.
- Quali sono i formati dei risultati restituiti
sh.cell_value
.È un numero intero, una stringa, ecc. - Possiamo eseguire espressioni regolari su di essi?
Soluzione
Rispondendo prima alla tua domanda
- Per prima cosa voglio sapere, qual è la "u" con il risultato?u è il qualificatore per unicode corda.COSÌ
u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx'
significa il test in unicode. - Quali sono i formati dei risultati restituiti da sh.cell_value .È un numero intero, una stringa ecc.?La sua stringa Unicode
- Possiamo eseguire espressioni regolari su di essi?Sì, puoi ed è così che fai
temp1=u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx' x=re.search(u'Adam',temp1) x.group() u'Adam'
È solo che devi specificare il modello anche in Unicode.
Altri suggerimenti
- È una stringa Unicode
- Cell_value restituisce il valore della cella.Il tipo dipende dal tipo di cella.
- SÌ.Puoi utilizzare espressioni regolari su stringhe Unicode, ma il tuo codice non è corretto.
Il tuo codice passa "temp1" a re.search come stringa.Non passa la variabile temp1.Tu vuoi:
>>> x=re.search(u"Adam",temp1)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow