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. 算术运算
  2. 逻辑运算
  3. 比较运算
  4. 赋值运算
  5. 位运算
  6. 成员运算
  7. 身份运算

在此我就着重介绍以上前四大基本运算

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:万国码的压缩版

  1. 英文:8位,一个字节
  2. 汉字:24位,3个字节
  3. 欧洲文字:16位,2个字节

utf-16:每个字符至少占16位,即两个字节

单位转换:
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB

通常用到TB就够了。

原文地址:https://www.cnblogs.com/wangyueping/p/10992376.html

时间: 2024-07-29 11:16:55

Python运算符和编码的相关文章

Python运算符与编码

Python运算符与编码 while 运算符 初始编码  1.while循环 1.格式: while 条件: 循环体 While 如果条件为真,则是死循环,那么,结束循环的三种方式: break 跳出循环 continue 结束本次循环,继续下一次 加条件 1.运算符 2.1 算数运算符 print(a + b) print(a - b) print(a * b) print(a / b) #除(有小数点) print(a ** b) #幂 print(a // b) #整除(没有小数点) pr

python运算符和编码初识

1. 运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算. 算数运算 以下假设变量:a=10,b=20 比较运算 以下假设变量:a=10,b=20 赋值运算 以下假设变量:a=10,b=20 逻辑运算 针对逻辑运算的进一步研究: 在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系: ( )>not>and>or,同一优先级从左往右计算. 例题: 判断下列逻辑语句的T

Python基础二:pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git

Python基础二: pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git 1.pycharm的安装及简单使用 Tab / Shift + Tab 缩进.不缩进当前行 (先选中代码) Shift + 滚轮 放大缩小代码 Ctrl + ? 注释.解注(先选中代码) Ctrl + d 复制上一行代码 Ctrl + z 撤销 Ctrl + Shift + F10 RUN Ctrl + 左键---->点击 int,str 等可查看源码 2.while 循环(重点) w

Python运算符、基本数据类型、其他

一.python运算符 1.算术运算符 2.比较运算符 3.赋值运算符 4.逻辑运算符 5.成员运算符 二.基本数据类型 1.数字 int(整形) 在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647. 在64位系统上,整数的位数为64位,即-9223372036854775808~9223372036854775807. 2.布尔值 boolean 真或假 1或0 3.字符串 str “hello world!” 4.列表

Python运算符及案例

Python 运算符 什么是运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 接下来让我们一个个来学习Python的运算符. Python算术运算符 以下假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果

python 处理字符编码问题

今天好不容易重新开始写Python做实验,结果被字符编码虐的体无完肤.其实之前就已经比较清楚python处理字符编码的套路,但是今天白天反复的出现can't encode/decode ..., the original code not in 178之类的提示,甚是无力,后来偶尔使用了一下sys.setdefaultencoding('utf8')就解决了全部问题,真是不解. 下面还是总结一下Python几个编码设置的含义吧. 1. #coding=utf8 这种形式的注释告诉解释器,应该以c

Python 运算符day04

Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 Python算术运算符 以下假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 / 除 - x除以y b / a 输出结果 2 % 取模 -

3、Python运算符

3-1.Python运算符简介 1.python中常用的运算符 +:加 (可以是数字相加,也可以是字符串相加,字符串的+表示字符串的拼接) -:表示减或者取反 *:乘 (可以是两个数字相乘,也可以是字符串乘以数字,此时表示字符串重复若干次) **:幂运算 (如:2**3表示2的三次方) /:除运算 (当除数或者被除数中的任一个是小数时,相除的结果也会保留小数) //:两个数相除取其整数部分 %:两个数相除取其余数 &:按位与 (按位与是先把两个数都转化成二进制的数,然后按位进行与运算,只有两位都

Python运算符重载

运算符重载是指在方法(双下划线的特殊方法)中拦截内置的操作--当类的实例出现在内置操作中,Python会自动调用自定义的方法,并且返回自定义方法的操作结果. 可以让类拦截常规的Python运算. 可调用对象:__call__() 函数:内置函数.自定义函数.def.lambda 类 类方法 函数的属性: __doc__ __name__ __dict__ __code__ __globals__ 方法的属性: __doc__ __name__ __func__ __class__ __self_