Python变量和基本数据类型
1.变量
a .什么是变量
变量即变化的量,核心是“变”与“量”二字,变即变化,量即衡量状态。
b.为什么要有变量
程序执行的本质就是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态以及状态的变化。#比如: 英雄的等级为1,打怪升级(变)为10 僵尸的存活状态True,被植物打死了,于是变为False 人的名字为egon,也可以修改为Egon
c.如何定义变量
#变量名(相当于门牌号,指向值所在的空间),等号,变量值name='Egon'sex='male'age=18level=10
d.变量的定义规范
1. 变量名只能是 字母、数字或下划线的任意组合2. 变量名的第一个字符不能是数字3. 关键字不能声明为变量名['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except','exec', 'finally', 'for', 'from', 'global', 'if', 'import','in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
e.定义方式:
#驼峰体AgeOfOldboy = 56 NumberOfStudents = 80#下划线(推荐使用)age_of_oldboy = 56 number_of_students = 80
f.定义变量名不好的方式
#1. 变量名为中文、拼音#2. 变量名过长#3. 变量名词不达意
g.定义变量会有:id,type,value
#1 等号比较的是value,#2 is比较的是id
#强调:#1. id相同,意味着type和value必定相同#2. value相同type肯定相同,但id可能不同,如下>>> x='Info Egon:18'>>> y='Info Egon:18'>>> id(x)4376607152>>> id(y)4376607408>>> >>> x == yTrue>>> x is yFalse
h.常量
常量即指不变的量,如pai 3.141592653..., 或在程序运行过程中不会改变的量举例,假如老师的年龄会变,那这就是个变量,但在一些情况下,他的年龄不会变了,那就是常量。在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量 AGE_OF_OLDBOY = 56#ps:在c语言中有专门的常量定义语法,const int count = 60;一旦定义为常量,更改即会报错
2.基本数据类型
什么是数据?为何要有多种类型的数据?
数据即变量的值,如age=18,18则是我们保存的数据。
变量的是用来反映/保持状态以及状态变化的,毫无疑问针对不同的状态就应该用不同类型的数据去标识
a.数字
#int整型定义:age=10 #age=int(10)用于标识:年龄,等级,身份证号,qq号,个数#float浮点型定义:salary=3.1 #salary=float(3.1)用于标识:工资,身高,体重,
b.字符串
在python中,加了引号的字符就是字符串类型,python并没有字符类型。
定义:name='egon' #name=str('egon')
用于标识:描述性的内容,如姓名,性别,国籍,种族
那单引号、双引号、多引号有什么区别呢?
#那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合msg = "My name is Egon , I'm 18 years old!"
#多引号什么作用呢?作用就是多行字符串必须用多引号msg = '''今天我想写首小诗,歌颂我的同桌,你看他那乌黑的短发,好像一只炸毛鸡。'''print(msg)
字符串拼接(只能在字符串之间进行,且只能相加或相乘)
#数字可以进行加减乘除等运算,字符串呢?让我大声告诉你,也能?what ?是的,但只能进行"相加"和"相乘"运算。>>> name='egon'>>> age='18'>>> name+age #相加其实就是简单拼接'egon18'>>> name*5 'egonegonegonegonegon'
#注意1:字符串相加的效率不高字符串1+字符串3,并不会在字符串1的基础上加字符串2,而是申请一个全新的内存空间存入字符串1和字符串3,相当字符串1与字符串3的空间被复制了一次,#注意2:只能字符串加字符串,不能字符串加其他类型字符串拼接(只能在字符串之间进行,且只能相加或相乘)
3.列表
在[]内用逗号分隔,可以存放n个任意类型的值定义:
students=['egon','alex','wupeiqi',] #students=list(['egon','alex','wupeiqi',])
用于标识:存储多个值的情况,比如一个人有多个爱好
#存放多个学生的信息:姓名,年龄,爱好>>> students_info=[['egon',18,['play',]],['alex',18,['play','sleep']]]>>> students_info[0][2][0] #取出第一个学生的第一个爱好'play'
4.字典
#为何还要用字典?存放一个人的信息:姓名,性别,年龄,很明显是多个值,既然是存多个值,我们完全可以基于刚刚学习的列表去存放,如下>>> info=['egon','male',18]定义列表的目的不单单是为了存,还要考虑取值,如果我想取出这个人的年龄,可以用>>> info[2]但这是基于我们已经知道在第3个位置存放的是年龄的前提下,我们才知道索引2对应的是年龄即: #name, sex, ageinfo=['egon','male',18]而这完全只是一种假设,并没有真正意义上规定第三个位置存放的是年龄,于是我们需要寻求一种,即可以存放多个任意类型的值,又可以硬性规定值的映射关系的类型,比如key=value,这就用到了字典
在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型定义:info={'name':'egon','age':18,'sex':18} info=dict({'name':'egon','age':18,'sex':18})用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值
info={ 'name':'egon', 'hobbies':['play','sleep'], 'company_info':{ 'name':'Oldboy', 'type':'education', 'emp_num':40, }}print(info['company_info']['name']) #取公司名students=[ {'name':'alex','age':38,'hobbies':['play','sleep']}, {'name':'egon','age':18,'hobbies':['read','sleep']}, {'name':'wupeiqi','age':58,'hobbies':['music','read','sleep']},]print(students[1]['hobbies'][1]) #取第二个学生的第二个爱好
字典相关的嵌套、取值
5.布尔
#布尔值,一个True一个False#计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人脑能干什么,计算机就应该能干什么,人脑的主要作用是数据运行与逻辑运算,此处的布尔类型就模拟人的逻辑运行,即判断一个条件成立时,用True标识,不成立则用False标识>>> a=3>>> b=5>>> >>> a > b #不成立就是False,即假False>>> >>> a < b #成立就是True, 即真True
接下来就可以根据条件结果来干不同的事情了:if a > b print(a is bigger than b )else print(a is smaller than b )上面是伪代码,但意味着, 计算机已经可以像人脑一样根据判断结果不同,来执行不同的动作。
布尔类型的重点知识!!!:
所有数据类型都自带布尔值
None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False ,其余均为真
6.元组
Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
如下实例:
tup1 = ('physics', 'chemistry', 1997, 2000);tup2 = (1, 2, 3, 4, 5 );tup3 = "a", "b", "c", "d";创建空元组tup1 = ();元组中只包含一个元素时,需要在元素后面添加逗号tup1 = (50,);
Python变量和基本数据类型的更多相关文章
- Python变量与基本数据类型
Python变量与基本数据类型 前言 好了,从本章开始将正式进入Python的学习阶段.本章主要介绍的是Python变量与基本数据类型的认识,这些都是最基本的知识并且必须要牢靠掌握在心中. 注释 学习 ...
- python变量与基础数据类型
一.什么是变量 变量是什么? 变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用.在python中一切都是变量. 1.python变量命名的要求 1,必须有数字,字母,下划线任意组合. ...
- Python 简明教程 --- 4,Python 变量与基本数据类型
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 任何一个人都会写出能够让机器理解的代码,只有好的程序员才能写出人类可以理解的代码. -- Marti ...
- python变量及简单数据类型
python 目录 python 1.变量 1.变量的定义 2.变量的命名 3. 关键字 4.变量的命名规则 5.变量的类型 5.不同类型变量之间的计算 6.变量的输入 7.变量的格式化输出 8.格式 ...
- Python变量与常见数据类型
Python变量 变量与常量:有时被通称为变量 变量:通常指代能够产生变化的量,多用以描述事物的变化状态 常量:通常指代稳定不产生变化的量,多用于描述事物的固定状态 # 代码层面的使用 myname ...
- Python变量和简单数据类型
变量的命名和使用 在Python中使用变量时 ,需要遵守一定的规则和指南. 变量名只能包含字母‘数字和下划线 变量名不能包含空格,但可以用下划线分割其中单词 不要将Python关键字和函数名用作变量名 ...
- python—变量和简单数据类型
1.变量 在程序中可随时修改变量的值,python始终记录变量的最新值 变量名:必须以字母或者下划线开头,只能包含字母数字和下划线,建议使用下划线+小写字母的方式命名,不能为函数名和python关键字 ...
- python入门3 python变量,id(),is运算符
python变量无需声明数据类型,可以直接赋值使用. 比如: num=100 #整数 str="字符串" #字符串 turple1 =('mon','tue','wed','thu ...
- python变量 - python基础入门(6)
何为python变量,即数据类型.python变量一共六种类型:整数/浮点数/字符串/BOOL/列表/元组/字典,今天先讲解前四种,后三种留到后面的文章在讲解. 首先讲解print() 函数,prin ...
随机推荐
- 进击的Android注入术《一》
写在前面 这个系列本来是在公司的一个分享.内容比較多,所以就把这个PPT又一次组织整理成博客,希望对大家学习有所帮助.我会先以一个"短信拦截"作为样例,抛出问题,并提出了一种基于& ...
- python之版本管理
linux 环境下怎样对不同的python环境进行 方便的切换呢?update-alternatives工具能够非常方便的帮我们完成这个任务.而windows环境下可通过anaconda来完成. 1. ...
- PHP案例:学生信息管理系统
-- Database: test -- 表的结构 message CREATE TABLE `message` ( `id` tinyint(1) NOT NULL PRIMARY KEY AUTO ...
- Geek们为什么都用Linux?《完全使用Linux工作-王垠》读后记
真正开始使用Linux是从2013年某月看到王垠写的一篇<完全用Linux工作>,当时属于无比崇拜王垠的阶段,虽然在那之前常年都在电脑上装着双系统(linux,win),但linux也只能 ...
- Java动态代理机制小结
因为最近学习hadoop中用到了动态代理的相关知识,之前AOP编程也碰到过,所以在这里特地总结一下. 在java的动态代理机制中,有两个重要的类或接口,一个是 InvocationHandler(In ...
- Visual Studio中“后期生成事件命令行” 中使用XCopy命令
将程序所依赖的动态库与其他依赖文件做了分类,使用XCopy命令自动生成相应的目录结构. set source="$(TargetDir)" set output="$(S ...
- 基于WebBrowser 的爬虫程序
WebBrowser的属性和事件 WebBrowser 如何跳转页面 web.Navigate(""); WebBrowser 如何循环跳转获取页面内容 bool loading ...
- Ubuntu14.04中安装Sublime_Text_3
Sublime Text 简介 Sublime Text 是一款流行的文本编辑器软件,有点类似于TextMate,跨平台,可运行在Linux.Windows和Mac OS X.也是许多程序员喜欢使用的 ...
- Text类型的字段进行数据替换
一.text不大于8000 varchar和nvarchar类型是支持replace函数的,所以如果你的text不超过8000,可以先转换成前面两种类型再使用replace. UPDATE News ...
- 2015InfoQ软件大会技术记录
前述 参加infoq软件大会,最大的感触就是,互联网行业的技术发展日新月异:由市场痛点.用户痛点.开发痛点所驱动的技术变革更是遍地开花.新的技术新的思维也是层出不穷:大会中频频提到的高扩展高可用架构. ...