day03 数据类型与运算符
今日内容:
1、变量及常量的命名规范
2、与用户的交互
3、字符串的格式化输出
4、基本的数据类型
5、运算符
6、注释
今日重点:
1、变量及常量的命名规范
(1)强制规范【如果违反会报错】
1> 变量的命名只能使用字母、数字、下划线,且首字母不能为数字。
2> 变量的命名不能与关键字重名,与有些关键字重名不会报错,但是与以下常用的关键字重名会报错:
['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']
(2)约定规范【如果违反也不会报错】
1> 一般python中 支持 使用 _ 的方式连接两个单词的方式进行变量的命名,例如:age_andy = 18
2> 也可以使用大驼峰(AgeAndy)与小驼峰命名法(ageAndy)
3> 以__开头及结尾的变量名被称为魔法变量【内置函数】
4> 以_开头的元素有特殊含义
5> 常量使用全大写进行命名,但是并没有严格意义上的常量,在python运行过程中所有的数值都可以被改变,但是约定全大写的量不去改变。
6> 对于常见的英文单词缩写,经常使用全大写。
2、基本的数据类型
(1)整型 int
1> 在 python2 中有 long与int 类型,但是在python3中只有 int 类型
2> 两种类型的存储机制差别:
在 python2 中,数据首先是以int类型进行存储的,但是如果数据过长就会重新开辟一个long类型的内存空间。
在python3 中,任意长度的字符串都是以int类型进行存储的,如果数据过长,超出部分就会以字符串的类型进行存储,但是内部机制会使这种类型的数据能够进行计算。
(2)浮点型 float
1> 浮点型用来存储小数
(3)字符串类型 str
1> 字符串类型有两种表示方法:单行字符串 与 多行字符串
2> 单行字符串使用 '' | "" 进行表示,字符串只能写在一行
3> 多行字符串使用 ''' ''' | """ """ 进行表示 ,字符串可以写在多行,只要在引号之内就行。
(4)布尔类型 bool
1> 布尔类型只有True 与 False
2> 数据都自带布尔值,但是只有在进行判断时才会显示这种特性,在逻辑运算符中,会依据数据的布尔值特性进行判断,但是,最后返回的是数据本身。
3> None 、 0 、空 的布尔值为False,空 包括空字典、空字符串、空列表等。
(5)列表 list
ls = [1,2,3,4]
1> 列表的取值
列表通过索引进行取值,列表的索引从0开始
2> 列表的嵌套
列表中的某一个值也可以是列表类型,取值时只要逐层通过索引取值就行了。
3> 列表的内存表示
在内存中,列表中每个值是单独进行存储的,列表中存储的是每个值的内存地址,列表的内存地址在栈区进行存储。
(6)字典 dict
1> 字典也是存多个值的,但是为了对存的值有一个描述,所以使用 dict 来表示多个数据,通常,有多个同种数据形式 的值用列表,有多种数据类型的用字典
2> 字典的取值:字典是通过 key 来进行取值的
3> 字典的嵌套,字典的嵌套与列表的嵌套相同,通过 key 进入逐层取值就行。
3、运算符
(1)算数运算符
算数运算符主要有以下几种:
+ | 加法运算 |
- | 减法运算 |
* | 乘法运算 |
/ | 除法运算 |
** | 幂 |
// | 取整 |
% | 取模/取余 |
(2)比较运算符:
> | 大于 |
< | 小于 |
== | 等于 |
>= | 大于等于 |
<= | 小于等于 |
!= | 不等于 |
【注】:可以进行连比 5 < num < 10
(3)赋值运算符
1> 交叉复制:
a = 10
b = 20
a,b = b,a
2> 链式赋值
a = b = c = 10
3> 解压赋值
ls = [1,2,3,4]
a,b,c,d = ls
【注】:解压赋值等号左右必须相同,否则会报错,但是如果使用 *_ 可以代替任意数量的变量,可以使用此方法取前面或后面的值 a,*_ = ls ,此时 a = 1,其余的数值储存在下划线中。
(4)逻辑运算符
1> 逻辑运算符有 and | or | not
2> 在进行逻辑运算时,比较的是布尔类型,但是最后返回的是 数值本身 或者 已经比较好的布尔值
3> 逻辑运算符的优先级为: and < or < not,但是不用记优先级,因为如果进行联合运算时,可以增加括号,但是括号不能乱用。
其它内容
1、与用户的交互
(1)输入:
在 python3 中:
使用input进行输入,输入的结果全部以字符串的形式进行存储。
在 python2 中:
raw_input 与 python3 中的 input 相同
input 输入用户必须明确自己输入数据类型,输入的是什么类型就以什么类型存储。
(2)输出:
输出使用 print() 进行,在 python2 也可以省略括号。
【注】:print() 自带换行符
2、字符串的格式化输出
在进行字符串的输出时,有时字符串的某些内容不固定,为统一输出格式,会使用占位符对不定的内容进行占位,常用的占位符有两种:
1> %d | %s | %f
%d :对整型进行占位
%f:对浮点型进行占位 ,例如:" %010.6f " ==> 小数点后六位,全部数据长度为10位(包含小数点,小数点占一位),右测对其,左侧不足位数补0
%s:万能占位符,可以对所有的数据类型进行占位
【注】:如果有两位以上的占位符,使用 "包含占位符的字符串" %(第一个,第二个.......) 表示。
2> format
使用方法:"字符串{name}字符串".format(name="andy")
3、注释
注释有单行注释 # 与多行注释 """ """
多行注释需要在文档的开始,如果在文档的中央会被表示成字符串。
今日思考:
1、列表在内存中的存储机制
列表的每个值在内存中是单独存储的,列表只存储值得内存地址,然后列表的内存地址存储在栈区中
2、字典等类型在内存中的存储机制
其余能够存储多个值得数据类型也与列表的存储机制类似。
3、比较运算符可以比较两个值,返回的值为一个数字,而不是布尔值
在比较运算符中,如果是两个值进行运算,或者是一个数字一个布尔值,进行比较时是根据数值自带的布尔值属性进行比较的,但是返回时返回的是数值本身。
day03 数据类型与运算符的更多相关文章
- PHP语法(二):数据类型、运算符和函数
相关链接: PHP语法(一):基础和变量 PHP语法(二):数据类型.运算符和函数 PHP语法(三):控制结构(For循环/If/Switch/While) 这次整理了PHP的数据类型.运算符和函数. ...
- 9.12/ css3拓展、js基础语法、程序基本知识、数据类型、运算符表达方式、语句知识点
css3拓展: <display:none> 将某个元素隐藏 <visibility:hidden> 也是将某个元素隐藏 <display:block&g ...
- 【重走Android之路】【Java面向对象基础(一)】数据类型与运算符
[重走Android之路][基础篇(一)][Java面向对象基础]数据类型与运算符 1.数据类型介绍 在Java中,数据类型分为两种:基本数据类型和引用类型. 基本数据类型共8种,见下表: 基本数 ...
- java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;
<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...
- JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...
- python中基本数据类型以及运算符
python中基本数据类型以及运算符的知识 一.与用户的交互以及python2与python的区别 1.1什么是与用户交互 用户交互就是人往计算机中input(输入数据),计算机print(输出结果) ...
- 前端学习笔记--js概述与基础语法、变量、数据类型、运算符与表达式
本篇记录js的概述与基础语法.变量.数据类型.运算符与表达式 1.概述与基础语法 2.变量 举例: 3.数据类型 4.运算符与表达式
- 前端(十一)—— JavaScript基础:JS存在的位置、JS变量定义、调试方式、JS数据类型、运算符
JS存在的位置.JS变量定义.调试方式.JS数据类型.运算符 一.JS语言介绍 1.概念 浏览器脚本语言 可以编写运行在浏览器上的代码程序 属于解释性.弱语言类型编程语言 2.组成 ES语法:ECMA ...
- Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符
JavaScript用来干什么 数据的验证 将动态的内容写入到网页当中(ajax) 对事件做出相应 读写html当中的内容 检测浏览器 创建cookies 模拟动画 语法特点 基于对象和事件驱动的松散 ...
随机推荐
- Linux内存管理 (1)物理内存初始化
专题:Linux内存管理专题 关键词:用户内核空间划分.Node/Zone/Page.memblock.PGD/PUD/PMD/PTE.lowmem/highmem.ZONE_DMA/ZONE_NOR ...
- AOP从静态代理到动态代理 Emit实现
[前言] AOP为Aspect Oriented Programming的缩写,意思是面向切面编程的技术. 何为切面? 一个和业务没有任何耦合相关的代码段,诸如:调用日志,发送邮件,甚至路由分发.一切 ...
- DAY12、装饰器
一.补充:nonlocal关键字 1.作用:将L与E(E中的名字需要提前定义)的名字统一 2.应用场景:如果想在被嵌套的函数中修改外部函数变量(名字)的值 3.案例: def outer(): ...
- DAY11、函数总结
一.函数的对象 1.函数对象:函数名存放的就是函数的地址,所以函数名也是对像 2.函数对象的应用: 2.1.可以直接被引用 fn = cp_fn 2.2.可以当作函数参数传递 compute ...
- object.observe被废弃了怎么办
用新的 Proxy 具体见:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Proxy
- js和jquery设置css样式的几种方法
一.js设置样式的方法 1. 直接设置style的属性 某些情况用这个设置 !important值无效 element.style.height = '50px'; 2. 直接设置属性(只能用于某些 ...
- react性能优化
前面的话 本文将详细介绍react性能优化 避免重复渲染 当一个组件的props或者state改变时,React通过比较新返回的元素和之前渲染的元素来决定是否有必要更新实际的DOM.当他们不相等时,R ...
- P2613 有理数取余
原题链接 https://www.luogu.org/problemnew/show/P2613 在这里虽然是讲洛谷的题解,但用到的数论知识,归并到数论里也不为过! 进入正题: 首先看到题面:给出一个 ...
- Thinkphp5.1 ORM UML
Thinkphp5.1 ORM UML think-orm
- 打印并输出 log/日志到文件(C++)
#include <stdarg.h> #define MAX_LEN 1024 bool debug_mode; // 使用方法同 printf void lprintf(const c ...