day_3各种数据类型与各种运算符
首先我们复习一下昨天的内容
1:语言的分类:
--有三种 机器语言,汇编语言,高级语言
运行的效率是机器语言最高 开发效率 是高级语言最高
2:计算机由五大部分组成:控制器+运算器+存储器+input设备+output设备
3:计算机的三大核心是 cpu+内存+硬盘
4:搭建python解释器的终端运行环境 和pip的运行环境:
5:两种python的执行方式 1:交互式 2:脚本式
6:变量:变量由变量名 +赋值的等号+变量值组成
7:pycharm的安装和创建项目
下面讲今天的内容
今天的内容有变量的命名规范,常量,格式化输入输出,注释,各种数据类型和各种运算符
变量的命名只能由字母数字及下划线_组成 不能以数字开头
并且避免与系统关键字重名,重名有的会报错有的不会报错,但是系统的功能就被自定 义的功能屏蔽掉了。
#注 以下关键字变为变量名会直接出现错误
['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']
以下划线开头的变量都有特殊含义
以双下划线开头与结尾的叫做魔法变量,我们叫他内置变量
建议使用下划线连接语法来声明长变量名 old_boy_edu
支持小驼峰与大驼峰的命名规则 owenName
多个单词的简写建议使用全大写 URL | HTTP
用全大写来标识常量 : PI = 3.141592653
下面说一下常量
常量的定义是 在运行过程中值不能被改变的量
python中没有严格的常量语法,因为Python中所有的量在运行过程中其实都能发生改变,只能自我保障不去改变全大写定义的变量值
输出是自带换行的
在python2中print可以加括号执行 也可以加空格执行需要输出的数据
在python3中只能加括号执行 加空格被遗弃
输入
python2中用input接收到什么类型就会保存为什么类型 并且可接收变量
用raw_input接收到的所有输入都以字符串进行存储
在python3中用input接收到的所有信息都是直接输入,都会被转为字符串储存
注释
被注释的内容不会被python解释器执行,是提供给开发者阅读代码的提示
单行注释用井号开头的语句 # .....
多行注释出现在文件的最上方 用三引号开头和三引号结尾
pycharm的快捷键是 ctrl 加 /
下面是数据类型
整型
在python2下数据过长用long类型来存储 数据量小的用int存储
在python3下long被遗弃 所有整型都用int存储 (数据量过大有个优化机制,采用字符串存储处理,用的时候和整型一样)
浮点型
float 用来存放小数
可以通过格式化方式来绝对输出格式
%f是对浮点型数据进行占位 %f中间可以输入一个点加数字 点后的数字表示小数精度
点前的数字表示输出的长度,小于等于要输出的数据长度不起作用,超出就采用规定的最大长度
%015.6f 代表右对齐,左侧不足拿0填充,%-15.6f左对齐输出
可以将格式化的结果进行保存,以便之后再次使用
info = '%015.6f' % salary
print(info)
布尔类型
布尔类型就是两个值 True 和False
空列表 空字符串 空字典和0都为False
字符串类型
单行字符串用一个单引号或者一个双引号开头以及结尾
多行字符串用三个单引号或者三个双引号开头及结尾
%s是万能占位符 %是用来连接有占位符的字符串与需要占位的变量,多个变量用()包裹
列表
1:列表是变量名加一个赋值的=号再加一个中括号,中括号里面可以存放多个值用逗号隔开
ls=[3,2,1]
列表的变量名访问的是列表整体
列表的变量名加个中括号里面放个数是通过索引取值
通过索引(index)来访问的是具体哪一个位置的值,索引(index)从0开始编号
list存放值的方式列表的0号位存放的不是数字3而是堆区3空间的地址
# 4、ls的嵌套及值的访问
ls = [[1, 2, 3], [4, 5, 6], [7, 8, [9]]]
# 访问数字9
print(ls[2][2][0])
字典的诞生
列表能存放多个值,但多个值只能通过index区分,但是index没有语义
需要既可以存放多个值,且每个值都有一个语义描述 所以就有了dict字典类型
字典的定义是 一对大括号里面前面放key中间冒号隔开后面放value值的,key对于开发者来说是已知的
通过字典名加[]里面放key 来访问key描述的值
dic={'key':'value'}
# 字典的嵌套
info = {
'name': 'egon',
'hobbies': ['play', 'sleep'],
'company_info': {
'name': 'Oldboy',
'type': 'education',
'emp_num': 40,
}
}
# 拿到40 | 拿到 'sleep'
res = info['company_info']['emp_num']
print(res)
res = info['hobbies'][1]
print(res)
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'][0])
下面是各种运算符
首先是算术运算符
+ - * / 两个除号是整除 两个**号是求幂 %是取余
有负数参与的取余 符号跟着百分号后面那个数
字符串和list可以做 加法和乘法
/非整除,// 为整除
# 3.**求幂:5 ** 2 => 25
# 4.任意数 % n => [0, n-1]
# 5.有负数参与的取余:符号跟着 % 后面那个数
比较运算符
> < >= <= 双等号是等于 感叹号加等于是不等于
运算的结果是bool类型
可以连续比较
num = 10
print(1 < num < 20)
赋值运算符有
=赋值运算符 +=加法赋值运算符 -= 减法赋值运算符 *=乘法赋值运算符 /=除法赋值运算符 %=取余赋值运算符 **= 幂赋值运算符 //= 整除赋值运算符
下划线是合法的变量名 会接受值 但我们认为下划线代表该解压位不用接受,用下划线来标识
# += | -= | *= | /= | %= | **= | //= | =
num = 10
num += 1 # num = num + 1 => 11
# 1.链式赋值
a = b = num
# 2.交叉赋值
x = 10
y = 20
x, y = y, x
# 3.解压赋值
ls = [3, 1, 2]
a, b, c = ls
# _是合法的变量名,会接受值,但我们认为_代表该解压位不用接收,用_来接收表示
_, _, g = ls # g才存放2,其他标示不接受
逻辑运算符
and or not
and 左右都成立 才成立 有不成立的就不成立
or 左右都不成立菜不成立,有成立的就成立
not 成立则不成立 不成立 则成立
短路原则 如果and前为假 那么整个式子就可以确定为假了 and后就不会执行
如果or前为真 那么整个式子就可以确定为真了 or后面就不会执行了
res = 0 and 20 # and前为假,整个式子就可以确定为假了,and后就不需要执行(短路)
print(res) # 0
res = 10 or 20 # or前为真,整个式子就可以确定为真了,or后就不需要执行(短路)
print(res) # 10
day_3各种数据类型与各种运算符的更多相关文章
- javascript 数据类型 变量 类型转换运算符
数据类型: 1.字符串(被双引号所包含的内容),小数,整数,日期时间,布尔型等. 2.变量: 都是通用类型的var, 定义一个变量格式:var a: 3.类型转换: 分为自动转换和强制转换,一般 ...
- C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏
二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...
- Java的标识符,数据类型与各种运算符
一.标识符 用作给变量.类和方法命名 java强调标识符有如下命名规则: 标识符必须以字母,下划线_,美元$开头 标识符其他部分可以是字母,下划线"_",美元符"$&qu ...
- python数据类型及基本运算符
1.数据类型 (1)什么是数据类型? 变量值是我们存储的数据,所以数据类型就是变量值的不同种类 (2)为什么要分类型? 变量值是为了保存现实世界中的状态,针对于不同的状态应该用不同的类型去表示 (3) ...
- python - 用户交互/数据类型/格式化输出/运算符/流程控制单双多分支
python:用户交互: 等用户输入,做反应: username=input("username:")password=input("password:")pr ...
- python中的数据类型和常用运算符
一. python中常见的数据类型 1. 整数:任何时候运算都是精确的 2. 浮点数:运算的时候,可能会有四舍五入 3. 字符串:字符串是以单引号'或双引号"括起来的任意文本 1) 同类型的 ...
- Java连载18-引用数据类型、三元运算符、控制语句if
一.引用类型 1.String是sun在JAVASE中提供的字符串类型 2.String.class字码 3.String是引用数据类型,s是变量名,“abc”是字面值: String s = &qu ...
- CSIC_716_20191102【input、数据类型概述、运算符】
1.与用户交互 python2和python3在与用户交互方面存在差异. 在python3中,使用input( )方法提供用户输入,而在python2中,使用raw_input( )方法,才能实现同样 ...
- python基础之基本数据类型与基本运算符
一.基本数据类型 1.整数类型 作用:描述年龄.等级,电话号码等数据类型 age = 18 phone_number = 13572839204 2.浮点型 作用:描述薪资.身高等带小数的类型 hei ...
随机推荐
- 转:Jmeter分布式测试
在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能. 一.Jmeter分 ...
- FFmpeg 开发环境搭建及第一个程序 Hello FFmpeg 编写
1. FFmpeg 的安装 ./configure make make install 默认会将 FFmpeg 安装至 /usr/local 目录下(可通过 configure 使用 "-p ...
- Linux-Centon7安装以及配置
环境:MacOS 10.13.6 虚拟机:VirtualBox6.0(VirtualBox-6.0.4-128413-OSX.dmg) Linux:Centos7(CentOS-7-x86_64-Mi ...
- http/2.0与http/1.1的区别
http/2是http协议自1999年http1.1发布后的首个更新 主要基于SPDY协议 2.0 采用二进制 而不是文本格式 完全多路复用 而不是有序并阻塞的 只需要一个连接即可实现并行 使 ...
- MVC开发T4代码生成之一----文本模板基础
T4文本模板 T4全写为Text Template Transformation Toolkit,是一种编程辅助工具,用来使程序代码自(懒)动(猿)生(福)成(利)的工具.MVC开发中大量使用了T4模 ...
- linux 查看系统资源命令
vmstat vmstat 1 3 #每隔一秒刷新3次 lsof lsof | more #process->file lsof | /sbin/init #file->process l ...
- 最大流当前弧优化Dinic分层模板
最大流模板: 普通最大流 无向图限制:将无向图的边拆成2条方向相反的有向边 顶点有流量限制:拆成2个点,连接一条容量为点容量限制的边 无源汇点有最小流限制的最大流:理解为水管流量形成循环 有源汇点的最 ...
- dotNet程序员的Java爬坑之旅(二)
囉里囉唆的寫了一大堆,最後還是全刪除了.哎~ 言歸正傳,最近因爲發生了很多事情,所以更新的有嗲晚了,最近也一直在學習,但是感覺效率什麽的不是很高,這是不對的,反思一下,從這篇博文開始,打起精神吧. M ...
- Linux 平台 tcpdump 抓包
一. 在ecs上准备好mysql客户端命令 二. 开启抓包,抓包方法如下:Linux 平台: 1. 打开一个到ECS的ssh连接,并以root身份登录.在该窗口运行下列命令tcpdump -i any ...
- Atom使用
cmd-r 通过方法名查找 ctrl-option-g 跳转至光标所在方法或结构 安装 last-cursor-position 后 alt-- 返回至光标上一次所在位置