Python的变量及简单数据类型
Python的变量及简单类型
1. 变量
在Python编程中,变量是用来存放值或对像的容器。变量的名称可以自定义,但需遵循一定的规范,否则可能会引发一些错误。Python的变量可以分为数字、字符和对象三种。
1.1 变量的命名及使用
遵守变量的命名规则和命名指南,可以避免不必要的错误,提高代码的可读性和易理解性。其命名规则如下:
(1)变量名只能包含字母、数字和下划线。但是不能以数字打头。例如,定义一个表示姓名的变量,可以定义为:name1、_name、name_1等,但一定不能定义为1_name、1name等。
(2)变量名不能包含空格,但可以用下划线来分割其中的单词。例如,定义一个变量为goods_list 可行,但是不能定义为goods list ,这样可能会引发一些意外的错误。
(3)变量名不能使用Python的关键字和函数,也不能使用Python保留的特殊单词。例如,不能使用print当作变量名。
(4)变量名应简短,并且具有一定含义,让别人一看就知道大概的意思。例如,name比n好;student_name比s_n好;name_length比length_of_person_name好。
(5)变量名中尽量不要使用小写字母i和大写字母O,因为它们很容易被误看为1和0。
注意:虽然Python中变量名可以使用大写字母,但目前大家都习惯用小写字母来命名,因此,尽量也避免使用大写字母来命名变量。
1.2 使用变量时避免命名错误
当我们运行Python程序时,如果程序有错,Python解释器会给我们提供一个traceback。traceback是一条记录,指出了解释器尝试运行代码时,在代码的多少行的什么地方报错了。
例如:
当我们执行以上代码时,就会提示以下错误:
从上图,我们清楚的知道,代码的第2行的‘mesage’ 没有被定义。我们检查一下代码,发现打印的变量mesage 少了一个字母s,不是我们的在第一行定义的变量message。
1.3 字符串
所谓字符串就是一系列字符。在Python中,用引号括起来的都是字符,其中引号 可以是单引号,也可以是双引号。
例如,
1.3.1 字符串的大小写
在实际应用中,有时我们需将字符串的首字母大写,或者字符串所有字母都大写或小写。
例如,我们有一个字符串name = "xiao wei",现在以各种形式打印如下:
(1)字符串name中每个单词的首字母大写,用函数title():
(2)字符串name所有字母大写,用函数upper():
(3) 字符串name所有字母小写,用函数lower():
1.3.2 字符串的拼接
在许多情况下,我们需将几个字符串拼接到一块。
例如,我们分别用不同的变量存储姓和名的字符串,然后将其拼接为完整的姓名。
1.3.3 制表符和换行符的应用
在字符串中,有时我们需要添加一些空白,此时可以使用制表符或换行符实现。
例如,要在字符串中添加制表符,可以使用字符组合\t:
例如,要在字符串中添加换行符,可使用字符组合\n:
1.3.4 删除空白
在程序中,有时额外的空白往往会给人带来迷惑,也可能导致数据无法被显示出来。所以有时删除字符串左右的空白显得尤其重要。我们可以使用函数lstrip(),rstrip(),strip() 。
例如,需要删除字符串中左边的空白,可以使用函数lstrip():
例如,需要删除字符串中右边的空白,可以使用函数rstrip():
例如,需要删除字符串中左右边的空白,可以使用函数strip():
1.3.5 字符串中避免语法错误
语法错误是一种时不时会遇到的错误。程序包中包含非法的Python代码时,就会导致语法错误。
例如,在使用单引号括起来的字符串中,如果包含撇号,就会导致错误。因为Python解释器会将第一个单引号和撇号之间的内容看作一个字符串,而将余下的文本看作是Python代码,从而引发错误。在Python中,字符串既可以用单引号括起来,也可以使用双引号。但是,当字符串中存在撇号时,只能使用双引号。
单引号和双引号的错误使用:
单引号和双引号的正确使用:
1.3.6 Python2 中的print语句
在Python 2 中,print语句的语法跟Python3 有些不同,它 不需要把要打印的内容放到括号中。
例如,我们在Python 2中打印“Hello python 2.7 world!”:
1.3.6 字符串的常规操作
在Python中,我们对字符串的操作使用比较多,现将字符串的常规总结一下:
name = "my \tname is {name} and i am {year} old" print(name.capitalize()) # 首字母大写
print(name.count("y")) # 统计字母出现的次数
print(name.center(50,"-")) #居中打印50个字符,不够的在两端补充“-”
print(name.endswith("un")) #判断字符串以什么结尾,若结果为真,返回True,否则返回False
print(name.expandtabs(tabsize=20)) # 将tab键转换为多少个字符,即打印多个tab字符
print(name.find("name")) #返回字符串所在的位置,即下标、索引
print(name[name.find(name):9]) #字符串切片
print(name.format(name='yun',year=26)) # 字符串格式化输出一,用等号赋值
print(name.format_map({'name':'yun','year':''})) # 字符串格式化输出,用字典赋值
print(name.index("name")) # 根据某字符查找其在字符串中的索引,即下标
print(name.isalnum()) # 是否包含阿拉伯数据,单字符中不能有特殊符号
print('abc123'.isalnum())
print('abc123\t'.isalnum()) # 是否包含阿拉伯数据,单字符中不能有特殊符号
print('abA'.isdecimal()) # 判断是否为数字,是返回True,否则返回False
print(''.isdecimal())
print('1A'.isdigit()) # 判断是不是数字
print('a1A'.isidentifier()) #判断是不是一个合法的标识符
print('s 1A'.isnumeric()) #判断是不是一个数字
print(''.isnumeric())
print('My Name Is'.istitle()) #判断首字母是否大写
print('my Name Is'.istitle()) #判断首字母是否大写
print('My name is'.isprintable()) # tty file,drive file 基本不可以打印
print('My Name Is'.isupper()) # 判断是否大写
print('AAAAA'.isupper()) # 判断是否大写
print('+'.join(['a','b','c'])) # 用什么连接起来
print(''.join(['a','b','c'])) # 用什么连接起来
print(','.join(['a','b','c'])) # 用什么连接起来
print(name.ljust(50,'*')) # 打印长度为50的字符串,不够在右边用”*“填充
print(name.rjust(50,'-'))# 打印长度为50的字符串,不够在左边用”-“填充
print('Yun'.lower()) # 转为小写
print('Yun'.upper()) # 转为大写
print('\nYun')
print('\nYun'.lstrip()) # 去右边的空格
print('Yun\n'.rstrip()) # 去左边的空格
print('\nYun\n'.strip()) # 去掉左右空格
print(' Yun\n'.strip())
p = str.maketrans("abcdef",'') # 对应替换 ,前后个数得一样多
print("Yun Qtian".translate(p))
print('Yun'.replace('Y','y')) # 字符替换
print('Yun Qtian'.rfind('t')) # 从左向右,找到该字符所在的位置,并返回该位置
print('Yun Qtian'.split('Q')) # 以某字符为分割符,分成多个元素
print('Yun Qtian'.split(' ')) # 以某字符为分割符,分成多个元素
print('1+2+3+4'.split('+'))
print('1+2\n+3+4'.splitlines()) # 以空格分割
print('Yun Qtian'.swapcase()) # 大小写互换
print('yun qtian'.title()) # 首字母大写
print('yun qtian'.zfill(50)) # 打印50字符,不够的在左边用0填充
1.4 数字
在编程中,经常使用数字来记录游戏得分、便是可视化数据、存储Web应用信息等。
1.4.1 整数
在32位系统上,整数的位数为32位,取值范围为-2**31~2**31-1,即 -2147483648 ~ 2147483647。
在64位系统上,整数的位数为64位,取值范围为:-2**63~2**63-1,即 -9223372036854775808~9223372036854775807 。
在Python 2.2 开始,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今Python中不需要用字母L来标识数据是否为long(长整型)。所以 在Python中,输入的整数都会被默认为字符型。
例如,我们输入a的值26,b的值12,我们需要用input()来输入26和12,并将其相加。
(1)我们直接输入a和b的值,不做认为出来,其结果如下:
从上面的运行结果可知,并没有实现我们想要的a和b相加,而是将其拼接到一起,下面我们来看看其类型究竟是什么。
(2)用type()函数查看a和b的类型:
从上图可知,Python解释器默认将我们输入的a和b的整数当做了字符,所有我们打印a加b的时候,就被当做字符串拼接。那么我们该如何实现a和b相加呢?
(3)用int()函数强行转型。如下图所示:
在Python中,可对整数执行加(+)、减(-)、乘(*)、除(/)运算等,并且在终端回话中,Python直接返回运算结果。
在Python中,使用两个乘号表示乘方运算。
Python还支持运算次序,因此可以在同一个表达式中使用多种运算,还可以使用括号来修改运算次序。
1.4.2 浮点数
python中将带小数点的数字都称为浮点数。你只需输入你想要使用的数字即可,Python通常都会按你所期望的方式处理它们:
注意:Python运算结果中包含的小数位数可能不是确认的,这是所有语言都存在的问题,没必要担心。就现在而言,暂时忽略多余的小数位数即可。实际运用中我们再根际实际需要对其进行处理。
1.4.3 使用函数 str() 避免类型错误
在Python中,当你输入的值是整数(int)的变量,Python不知道这个正式是数值,还是字符。因此,可以调用str()函数,将非字符串值表示为字符串:
例如,错误的使用:
例如,正式使用:
1.4.4 Python 2 中的整数
在Python 2 中,将两个整数相除得到的结果稍有不同。整数相除的结果只包含整数部分,不进行四舍五入,且小数部分直接删除。若要避免这种情况,必须保证至少有一个操作数是浮点数,这样结果也将是浮点数。
例如:
1.5 注释
在大多数编程语言中,注释都是一项很有用的功能。代码中,一个好的注释,可以帮忙你更好的理解程序功能,也能有利于排查问题,方便后期的维护。
1.5.1 如何编写注释
在Python中,单行注释用井号(#)标识,井号后面的内容都会被Python解释器忽略。多行注释前后分别用3个单引号括起来。
例如,单行注释:
例如,多行注释:
1.5.2 该编写什么样的注释
编写注释的主要目的是描述代码要做什么,以及是如何做的。在开发项目期间,我们应该对各个部分如何协调工作了如指掌,但过一段时间后,有一些细节我们就可能记不清楚了。很多情况请,我们都是通过看代码的逻辑来了解程序的实现功能及业务逻辑。此时,如果代码没有注释,代码看起来就非常费劲。相反,一个清晰的代码注释,可以帮助你快说理清代码的来龙去脉,大大节省了不必要浪费的时间。
因此,在编程过程中要养成在代码中编写清晰、简洁的注释的良好习惯。
Python的变量及简单数据类型的更多相关文章
- 说说 Python 的变量以及简单数据类型
1 变量 先来看一个示例: news="我国第一个人工智能规划问世"print(news) 运行结果: 可以看出使用 Python 定义变量很简单,甚至都不需要指定变量的类型. 1 ...
- python基础-----变量和简单数据类型
初识变量 1.变量命名规则: a.字母 b.数字(不能开头) c.下划线 ps.硬性规定,命名必须是字母,数字,下划线,且不能以数字开头. 软性规则,以下划线分割 2.实例: a.写法: age_of ...
- python入门-变量和简单数据类型
1 title() 是以首字母大写的方式显示每个单词 lower() 字母小写 upper() 字母大写 2 python使用+号来合并字符串 字符串中使用制表符用\t 字符串中使用换行符\n 用rs ...
- Python编程从入门到实践笔记——变量和简单数据类型
Python编程从入门到实践笔记——变量和简单数据类型 #coding=gbk #变量 message_1 = 'aAa fff' message_2 = 'hart' message_3 = &qu ...
- python的变量和简单的数据类型
决定学习python这门语言了,本人资质愚钝,只会把学到的东西记录下来,供自己查漏补缺,也可以分享给和我一样正在学习python语言的人,若在记录中存在什么错误,希望多多批评指正,谢谢. Python ...
- Python学习-------变量和简单的数据类型(String)
1.变量命名和使用 变量命名规则:a.变量名只能包含(字母 数字 下划线),且变量不能以数字开头,例如:变量 s_1(正确),变量1_s(错误) b.变量名不能包含空格,可以使用下划线来间隔 ...
- python变量及简单数据类型
python 目录 python 1.变量 1.变量的定义 2.变量的命名 3. 关键字 4.变量的命名规则 5.变量的类型 5.不同类型变量之间的计算 6.变量的输入 7.变量的格式化输出 8.格式 ...
- python的变量与基本数据类型
今日内容 python多版本共存 python的注释 python的变量与常量 变量的本质 变量的命名规范 python基本数据类型 内容详细 python多版本共存 先将两个版本的python解释器 ...
- Python入门 .变量 常量 基础数据类型 用户输入 流程控制语句 小练习题
# 2.name = input(“>>>”)通过代码来验证name变量是什么数据类型?--str name = input(">>>") pr ...
随机推荐
- Python Web框架篇:Django Model基础
model是关于你的数据的单一的,确定的信息来源. 它包含您正在存储的数据的基本字段和行为.Django通过抽象化的模型层(models)为你的网络应用提供对于数据的结构化处理和操作处理,数据库相关的 ...
- 为Lua5.3编写C模块简单示例
为Lua5.3编写C模块简单示例 一.编译安装Lua5.3 MSVC 命令行安装脚本: @echo off md bin md lib md include cd src cl /c /nologo ...
- A Simple Game
A Simple Game Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/65535 K (Java/Others) Total ...
- Python丨Python 性能分析大全
虽然运行速度慢是 Python 与生俱来的特点,大多数时候我们用 Python 就意味着放弃对性能的追求.但是,就算是用纯 Python 完成同一个任务,老手写出来的代码可能会比菜鸟写的代码块几倍,甚 ...
- NHibernate 慎用Session.Merge
Session.Merge其意思有两个步骤, 一般用法: Session.Merge(obj); 1. 从当前的Session中获取obj对象, 如果未获取到则从数据库获取. 2. 把程序中的obj的 ...
- 从零开始搭建Vue组件库——VV-UI
前言: 前端组件化是当今热议的话题之一,也是我们在开发单页应用经常会碰到的一个问题,现在我们有了功能非常完善的Element-UI.各个大厂也相继宣布开源XXX-UI.但是也会存在一些问题,比如每个公 ...
- override和重载的区别
1.父类:public virtual string ToString(){return "a";}子类:public override string ToString(){ret ...
- [转载] 红黑树(Red Black Tree)- 对于 JDK TreeMap的实现
转载自http://blog.csdn.net/yangjun2/article/details/6542321 介绍另一种平衡二叉树:红黑树(Red Black Tree),红黑树由Rudolf B ...
- Python之re正则模块
正则表达式可以帮助我们更好的描述复制的文本格式,可以更好地利用它们对文本数据进行检索.替换.提取和修改操作. http://www.cnblogs.com/huxi/archive/2010/07/0 ...
- Webstorm下安装ESLint检测JS代码
今天配置下Webstorm下面的Eslint, 先看下本地安装的Node,NPM版本,2017-11-23日这个节点最新版本. >node -v v8.9.1 >npm -v 使用Webs ...