Python运算符和编码
Python运算符和编码
一、格式化输出
现在有以下需求,让⽤户输入name, age, job,hobby 然后输出如下所⽰:
----------info of dogfa----------
name: dogfa
age: 18
job: 嫖客
hobby: 嫖娼
---------------------------------
如果用字符串拼接的话会很繁琐,所以我们可以采用这样的方法来实现:
name = input("请输入姓名:")
age = input("请输入年龄:")
job = input("请输入工作:")
hobby = input("请输入爱好:")
info = '''----------info of dogfa----------
name: %s
age: %s
job: %s
hobby: %s
---------------------------------
''' % (name, age, job, hobby)
print(info)

二、基本运算符
计算机可以进⾏的运算有很多种,可不只加减乘除这么简单,运算按种类可分为:
- 算术运算
- 逻辑运算
- 比较运算
- 赋值运算
- 位运算
- 成员运算
- 身份运算
在此我就着重介绍以上前四大基本运算
1、算术运算
以下假设变量:a=10,b=20
| 运算符 | 描述 | 示例 |
|---|---|---|
| + | 加 | a + b = 30 |
| - | 减 | b - a = 10 |
| * | 乘(若为字符串相乘则多个字符串拼接) | a * b = 200 |
| / | 除 | b / a = 2 |
| % | 取模(相除取余数) | b % a = 0 |
| ** | 幂(返回X的幂次方) | a ** b = 10^20 |
| // | 取整(相除取整数) | 7 // 3 = 2 |
2、比较运算
以下假设变量:a=10,b=20
| 运算符 | 描述 | 示例 |
|---|---|---|
| == | 判断是否相等 | a == b (False) |
| != | 判断是否不等 | a != b (True) |
| > | 判断是否大于 | a > b (False) |
| < | 判断是否小于 | a < b (True) |
| >= | 是否大于等于 | a >= b (False) |
| <= | 是否小于等于 | a <= b (True) |
3、赋值运算
| 运算符 | 描述 | 示例 |
|---|---|---|
| = | 简单的赋值运算符 | a == b (False) |
| += | 加法赋值运算符 | a += b (相当于a = a + b) |
| -= | 减法赋值运算符 | a -= b (相当于a = a - b) |
| *= | 乘法赋值运算符 | a *= b (相当于a = a * b) |
| /= | 除法赋值运算符 | a /= b (相当于a = a / b) |
| **= | 幂赋值运算符 | |
| //= | 取整赋值运算符 | a //= b (相当于a = a // b) |
4、逻辑运算
假设a = True ,b = False
| 运算符 | 描述 | 示例 |
|---|---|---|
| and | 与 | a and b (False) |
| or | 或 | a or b (True) |
| not | 非 | not(a and b)(True) |
逻辑运算的优先级:()>not>and>or,从左往右依次计算。
扩展:
x or y , x为真,值就是x,x为假,值是y;
x and y, x为真,值是y,x为假,值是x
3>4 or 4<3 and 1==1 (False)
1 < 2 and 3 < 4 or 1>2 (True)
2 > 1 and 3 < 4 or 4 > 5 and 2 < 1 (True)
not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 (False)
1 and 2 (2)
1 or 2 (1)
1 and 0 (0)
1 or 0 (1)
5、成员运算
- in
- not in
判断子元素是否在原字符串(字典,列表,集合)中:
temp = "dogfa is a dsb!"
print("dsb" in temp)
print("dsb" not in temp)
三、编码
python2解释器在加载 .py ⽂件中的代码时,会对内容进⾏编码(默认ascill),⽽python3对内容进⾏编码的默认为utf8。
早期. 计算机是美国发明的. 普及率不⾼, ⼀般只是在美国使⽤. 所以. 最早的编码结构就是按照美国⼈的习惯来编码
的. 对应数字+字⺟+特殊字符⼀共也没多少. 所以就形成了最早的编码ASCII码. 直到今天ASCII依然深深的影响着我们.
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字⺟的⼀套电
脑编码系统,主要⽤于显示现代英语和其他⻄欧语⾔,其最多只能⽤ 8 位来表示(⼀个字节),即:2**8 = 256,所
以,ASCII码最多只能表示 256 个符号。
例如:
| 字符 | 十进制 | 二进制 |
|---|---|---|
| a | 97 | 01100001 |
| A | 65 | 01000001 |
| space | 32 | 00100000 |
| 0 | 48 | 00110000 |
随着计算机的发展. 以及普及率的提⾼. 流⾏到欧洲和亚洲. 这时ASCII码就不合适了. ⽐如: 中⽂汉字有⼏万个. ⽽ASCII
最多也就256个位置. 所以ASCII不⾏了. 怎么办呢? 这时, 不同的国家就提出了不同的编码⽤来适⽤于各⾃的语⾔环境.
⽐如, 中国的GBK, GB2312, BIG5, ISO-8859-1等等. 这时各个国家都可以使⽤计算机了.
GBK, 国标码占⽤2个字节. 对应ASCII码 GBK直接兼容. 因为计算机底层是⽤英⽂写的. 你不⽀持英⽂肯定不⾏. ⽽英
⽂已经使⽤了ASCII码. 所以GBK要兼容ASCII.
这⾥GBK国标码. 前⾯的ASCII码部分. 由于使⽤两个字节. 所以对于ASCII码⽽⾔. 前9位都是0
字⺟A:0100 0001 # ASCII
字⺟A:0000 0000 0100 0001 # 国标码
国标码的弊端: 只能中国⽤. ⽇本就垮了. 所以国标码不满⾜我们的使⽤. 这时提出了⼀个万国码Unicode. unicode⼀
开始设计是每个字符两个字节. 设计完了. 发现我⼤中国汉字依然⽆法进⾏编码. 只能进⾏扩充. 扩充成32位也就是4个字
节. 这回够了. 但是. 问题来了. 中国字9万多. ⽽unicode可以表⽰40多亿. 根本⽤不了. 太浪费了. 于是乎, 就提出了新的
UTF编码.可变⻓度编码
UTF-8: 每个字符最少占8位. 每个字符占⽤的字节数不定.根据⽂字内容进⾏具体编码. 比如. 英⽂. 就⼀个字节就够了. 汉
字占3个字节. 这时即满⾜了中⽂. 也满⾜了节约. 也是⽬前使⽤频率最⾼的⼀种编码。
ascii:用8位,一个字节表示字符
gbk:用16位,两个字节表示字符
unicode:万国码,用32位,4个字节表示字符
urf-8:万国码的压缩版
- 英文:8位,一个字节
- 汉字:24位,3个字节
- 欧洲文字:16位,2个字节
utf-16:每个字符至少占16位,即两个字节
单位转换:
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
通常用到TB就够了。
Python运算符和编码的更多相关文章
- 万恶之源 - Python运算符与编码
格式化输出 现在有个需要我们录入我们身边好友的信息,格式如下: ------------ info of Alex Li ---------- Name : Alex Li Age : 22 job ...
- Python运算符与编码
阅读目录 while 循环 运算符 编码的问题 单位转换 整数 布尔值 while 循环 在生活中,我们遇到过循环的事情吧?比如循环听歌.在程序中,也是存才的,这就是流程控制语句 while 1.基本 ...
- 02.万恶之源-python 运算符和编码
一.流程控制语句if: 第一种语法: (最基本的语法) if 条件: 代码块/结果1 结果2 # 如果条件是真(True)执行结果为1,然后结果为2,如果条件为错(False), 直接结果2. 第二种 ...
- 小学生都能学会的python(运算符 和 while循环)
---恢复内容开始--- 小学生都能学会的python(运算符和编码) 一.格式化输出 #占位:"%s"占位,占得是字符串,"%d"占位,占的是数字. # 让用 ...
- python全栈 流程控制;while 循环 格式化输出 运算符 及编码
python全栈开发 1循环 2break和continue的区别 3格式化输出 4运算符 5编码 一.流程控制while循环 while条件: 代码块(循环体) 1.死循环; while True; ...
- python运算符与数据类型
python运算符 Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 以下假设变量: a=10,b=20: ...
- 学习笔记之Python最简编码规范
Python最简编码规范 - 机器学习算法与Python学习 https://mp.weixin.qq.com/s/i6MwvC4jYTE6D1KHFgBeoQ https://www.cnblogs ...
- 总结day2 ---- while循环的简单使用, 格式化输出.运算符.以及编码的应用
内容提要 一 : while 循环 while 的基本语句操作 如何终止循环 二 :格式化输出 三 :运算符号 四 :编码初识别 一 : while 循环 1 >>>>whi ...
- Python 常用 PEP8 编码规范
Python 常用 PEP8 编码规范 代码布局 缩进 每级缩进用4个空格. 括号中使用垂直隐式缩进或使用悬挂缩进. EXAMPLE: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
随机推荐
- 进入docker 容器命令行
#!/bin/bash CNAME=$1 CPID=$(docker inspect --format "{{.State.Pid}}" $CNAME) nsenter --tar ...
- JAVA基础知识|堆和栈
一.java六个存储数据的地方 1)寄存器(register):这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部.但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配.你不能直 ...
- Java并发指南8:AQS中的公平锁与非公平锁,Condtion
一行一行源码分析清楚 AbstractQueuedSynchronizer (二) 转自https://www.javadoop.com/post/AbstractQueuedSynchronizer ...
- Resend a Request by fiddler
Resend a Request You can resend a request directly from the Sessions List, or save requests to resen ...
- 前端知识点回顾——koa和模板引擎
koa 基于Node.js的web框架,koa1只兼容ES5,koa2兼容ES6及以后. const Koa = requier("koa"); const koa = new K ...
- 图像质量评价-NQM和WPSNR
王保全. 基于混合专家模型的快速图像超分辨率方法研究与实现[D]. 2015. PSNR 和SSIM 在有时候并不能很确切的表示图像质量 标准,该论文中根据一定量的人为的感知评分作为参考,用斯皮尔曼等 ...
- LevelListDrawable
用来管理一组Drawable的,我们可以为里面的drawable设置不同的level, 当他们绘制的时候,会根据level属性值获取对应的drawable绘制到画布上,根节点 为:<level- ...
- SqlServer视图介绍以及创建方式
1.,视图的介绍: (ps:学sqlServer视图是在面试问到之后学的,答不上来太low了,然后就去各种搜索操作对视图也有了自己的理解) 其实视图就是一张表,是一张表中或者多张表中经过某种筛选后显示 ...
- ckpt convert to pb
import tensorflow as tf #from create_tf_record import * from tensorflow.python.framework import grap ...
- Ubuntu安装teamview客户端
1,下载teamviem客户端的Ubuntu版本 下载地址 https://www.teamviewer.com/en/download/linux/ 2,安装 apt install ./teamv ...