Home >Backend Development >Python Tutorial >python variables cannot start with a number

python variables cannot start with a number

WBOY
WBOYOriginal
2016-07-22 08:56:281704browse

When writing a python function, I accidentally discovered a problem: variables in python cannot start with a number. A variable 3_num_varchar is defined in the following function, and an error occurs when executed.

The function is as follows:

def database_feild_varchar_trans(in_feild):
  '''
  transfer the feild if varchar then 3times lang else no transfer
  '''
  feild_split = in_feild.split(' ')
  is_varchar = feild_split[1].find('VARCHAR')
  if is_varchar >= 0 :
    num_varchar = feild_split[1].replace('VARCHAR','').replace('(','').replace(')','') 
    print (num_varchar)
    3_num_varchar = num_varchar*3
    feild_split[1] = feild_split[1].replace(str(num_varchar),str(3_num_varchar))
    return feild_split
  else:
    print ('The feild type is not varchar')
    return feild_split

The error message is as follows:

>>> runfile('E:/procedure/python/projects/others/table_test.py', wdir='E:/procedure/python/projects/others')
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "D:\Python33\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 699, in runfile
  execfile(filename, namespace)
 File "D:\Python33\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", line 88, in execfile
  exec(compile(open(filename, 'rb').read(), filename, 'exec'), namespace)
 File "E:/procedure/python/projects/others/table_test.py", line 20
  3_num_varchar = int(num_varchar)*3
        ^
SyntaxError: invalid syntax

将变量3_num_varchar改为num_varchar_3,运行成功,程序改为如下:

import os
import sys
str1='aaa varchar(10)'

def database_feild_varchar_trans(in_feild):
  '''
  transfer the feild if varchar then 3times lang else no transfer
  '''
  feild_split = in_feild.split(' ')
  is_varchar = feild_split[1].find('VARCHAR')
  if is_varchar >= 0 :
    num_varchar = feild_split[1].replace('VARCHAR','').replace('(','').replace(')','') 
    print (num_varchar)
    num_varchar_3 = num_varchar*3
    feild_split[1] = feild_split[1].replace(str(num_varchar),str(num_varchar_3))
    return feild_split
  else:
    print ('The feild type is not varchar')
    return feild_split

print (database_feild_varchar_trans(str1))

Run result:

>>> runfile('E:/procedure/python/projects/others/table_test.py', wdir='E:/procedure/python/projects/others')
The feild type is not varchar
['aaa', 'varchar(10)']

The above detailed explanation of python variables that cannot start with a number is all the content shared by the editor. I hope it can give you a reference, and I hope you will support Script Home more.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn