为什么python的命名不能以数字开头_python变量不能以数字打头
在编写python函数时,无意中发现一个问题:python中的变量不能以数字打头,以下函数中定义了一个变量3_num_varchar,执行时报错。
函数如下:
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
报错信息如下:
>>> runfile('E:/procedure/python/projects/others/table_test.py', wdir='E:/procedure/python/projects/others')
Traceback (most recent call last):
File "", line 1, in
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))
运行结果:
>>> runfile('E:/procedure/python/projects/others/table_test.py', wdir='E:/procedure/python/projects/others')
The feild type is not varchar
['aaa', 'varchar(10)']
为什么python的命名不能以数字开头_python变量不能以数字打头相关推荐
- python为什么不能以数字开头_python变量为什么不能以数字开头
任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在. Python变量命名规则(推荐学习:Python视频教程) 变量名只能包含字母.数字和下划线.变量名可以字母或下划线开头,但不能以 ...
- python变量名必须以什么开头_python变量为什么不能以数字开头
任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在. Python变量命名规则(推荐学习:Python视频教程) 变量名只能包含字母.数字和下划线.变量名可以字母或下划线开头,但不能以 ...
- python的标识符可以以汉字开头_Python标识符命名小知识
简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量.函数.类.模块以及其他对象的名称. Python 中标识符的命名不是随意的,而是要遵守一定的命令规则,比如 ...
- python正则表达式数字开头_Python正则表达式总结
基础匹配 '\d' 可以匹配一个数字,'00\d'可以匹配'007': '\w' 可以匹配一个字母或者数字,'00\w'可以匹配'007'或者'00a': '\s' 可以匹配一个空格: '.'可以匹配 ...
- python中标识符下划线用作开头_python python中那些双下划线开头的那些函数都是干啥用用的...
1.写在前面 今天遇到了__slots__,,所以我就想了解下python中那些双下划线开头的那些函数都是干啥用用的,翻到了下面这篇博客,看着很全面,我只了解其中的一部分,还不敢乱下定义. 其实如果足 ...
- python复数的实部和虚部的数字类型_Python基础:数据类型-数字(5)
在Python中,所有的数据类型都是类,每一个变量都是类的实例. Python中有6种标准数据类型:数字(Number).字符串(String).列表(List).元组(Tuple).集合(Sets) ...
- python定义int变量_Python变量以及常用数字类型(上)
好好学习,天天向上.又到了齐小猴写笔记的时间,今天的内容是python 变量以及常用数字类型,废话不多说,撸起袖子开始写 变量 1.说到变量,先回顾上一篇说过的标识符,自己定义,自己命名,由字母,下划 ...
- python输入数字字符串_Python笔记—基本数据类型—数字字符串
数字 int #整型 所有的功能,都在int里 a = 123v= a.bit_length() #软件自带函数联想 print(v)-int 将字符串转换成数字 a= '123' print(typ ...
- java可以用数字开头做变量吗_java变量为什么不能以数字开头
程序语言的分析分词法和语法两部分.词法分析主要用的是正规文法,也就是三型文法.这类文法主要采用正则表达式分析.正则文法分析器的特点是它是不回溯的,所以实现很简单.如果一个变量以数字开头,那么分析器就必 ...
最新文章
- Python - - 项目实战 -- pygame 快速入门
- 云服务器登陆修改文件,香港云服务器使用注意事项(windows版)
- python集成工具包_pyBit
- HTML与CSS基础之否定伪类(四)
- 从一个骗局谈生活中的基础算法
- apache调优隐藏版本信息及404重定向
- 【Go】使用压缩文件优化io (二)
- 20169302 2016-2017-2 《网络攻防实践》课程总结
- 使用计算机音箱进行音乐播放的过程,插卡音箱音乐播放顺序调整及歌单式1
- ET框架-02 ET框架-开发环境搭建
- 利用Python制作本地Excel的查询与生成的程序
- 敏捷史话(三):笃定前行的勇者——Ken Schwaber
- [Angular] - 01 Architecture and workflow
- 服务器固态盘和机械盘哪个好
- ZT 计算一个无符整数中1Bit的个数(1) 2010-04-20 10:52:48
- bzoj3123【SDOI2013】森林
- 微商大咖龚文祥遭查税:退出微商,微信收款有补税风险?
- java profiler 工具_(转)Java应用性能分析工具:async-profiler
- pinyin4j获取多音字首字母同时保留非中文字符
- 高性价比成磷酸铁锂杀手锏
热门文章
- 当SQL Server爱上Linux:AVAILABILITY_MODE 和 DataGuard 的实践差距
- 如何避免成为新技术背后的“奶嘴一族”
- 使用LiteOS Studio图形化查看LiteOS在STM32上运行的奥秘
- 【华为云技术分享】MongoDB经典故障系列二:如何限制最大连接数?
- javascript基础修炼(1)——一道十面埋伏的原型链面试题
- ajax传递字符,Ajax怎么传递特殊字符的数据
- Jupyter notebook 中使用pip install安装第三方Python包
- Vue的基础认知二---vue的双向绑定/vue获取DOM节点
- 初始化_Linux的内存初始化
- linux cocos2dx 配置文件,Linux开发cocos2dx程序环境搭建