Python基础二编码和运算符

一、pycharm的使用

  • PyCharm是一种非常优秀的PythonIDE,其带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。
  • 安装与激活(网上大把教程,此处省略三千字,N张图...)
  • 设置(同上)
  • pycharm的快捷键

多使用快捷键能有效的提高我们的开发效率,其中

最常用的是:

1.ctrl+c    复制

2.ctrl+d    快速复制上行的内容至下一行

3.ctrl+shift+n    通过文件名快速查找工程内的文件

4.ctrl +a    全选

5.ctrl+alt+l    调整代码格式

6.alt+enter   导入模块

7.ctrl+z    回退

8. ctrl+x    剪贴

9. ctrl+/    注释,去注释

10.shift+方向键    多选

11.tab    缩进(可以通过选取多行进行批量缩进)

12.shift +Tab    往回移动及向外层缩进

13.shift +enter    自动回车,跳入下一行

14.ctrl +enter    自动回车,跳入上一行

15.ctrl+~     调整工作区样式 颜色方案等

16及以上   待挖掘

二、上一期的知识点回顾

  1. 简单了解CPU、内存、硬盘、操作系统之间的关系
  2. Python的产生于应用
  3. Python的发展史
  4. 编程语言的分类

编译型:把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 

解释型:是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的. 

  1. Python的优点
  2. Python解释器的种类
  3. 安装环境变量
  4. 运行第一个Python代码
  5. 变量及命名规范
  6. Python中不一样的常量
  7. 注释的两种基本法方法
  8. 基础数据类型int、str、boo类型
  9. 用户交互 input()方法
  10. 流程控制语句之if方法

回顾内容可以参考本人授业恩师太白金星的博客http://www.cnblogs.com/jin-xin/articles/7459977.html

三、while循环

  基本语句:while 条件:

         循环体

  while语句一经运行就停不下来,天荒地老、海枯石烂,这显然与我们的开发意图不符,那么如何让while这个固执的家伙停下来呢?

  • 方法一:改变条件本身使其不成立。
  • 方法二:break与continue 区别是break会终止并跳出循环,continue会终止本次循环而进行下一次循环
  • 方法三:quit() 与 exit() 这两种方法不建议使用会终止程序

四、格式化输出

方法一:采用%作为格式化输出的标记。如: 

>>> print("尊敬的%s用户,您好,当前余额不足%s元,请及时充值..."%("中国移不动","10"))
尊敬的中国移不动用户,您好,当前余额不足10元,请及时充值...

这里需要注意当格式化语句中本身就有%时,也就是说我们需要表达一个百分比时,为了避免引起不必要的冲突,使用%%表示真正意义的百分号

方法二:format方法(今天只了解有这种方法即可,后续更新)

五、运算符

算术运算符

以下假设变量: a=10,b=20

运算符 描述 实例
+ 加 - 两个对象相加 a + b 输出结果 30
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 - x除以y b / a 输出结果 2
% 取模 - 返回除法的余数 b % a 输出结果 0
** 幂 - 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000
// 取整除 - 返回商的整数部分(向下取整
>>> 9//2
4
>>> -9//2
-5

Python比较运算符

以下假设变量a为10,变量b为20:

运算符 描述 实例
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 true.
<> 不等于 - 比较两个对象是否不相等 (a <> b) 返回 true。这个运算符类似 != 。
> 大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。 (a < b) 返回 true。
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 true。

Python赋值运算符

以下假设变量a为10,变量b为20:

运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a

Python逻辑运算符

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:

运算符 逻辑表达式 描述 实例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False

Python成员运算符

除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。

运算符 描述 实例
in 如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

Python运算符优先级

以下表格列出了从最高到最低优先级的所有运算符:

运算符 描述
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 'AND'
^ | 位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符

六、初识编码

计算机能够认识的只有二进制如下:

11111100000

这类似于我们抗战时期使用的密码本,密码本中有独有的对应关系,可以使用各种代号,代码实现加密通讯。

计算机也有类似的机制,就是二进制与文字之间的对应关系,胡诌八扯一个例子:
0000001 今
0100101 晚
0000010 吃
0000110 鸡

000101001010100110
0000001 0100101 0000010 0000110
ASCII码:支持 英文字母,数字,特殊字符。
00000001 a
00000010 b

8位(bit) == 1 byte
在ASCII码中 8位一个字节表示一个字符。

Unicode :万国码,将全世界所有的文字全都包含进去
起初:
字母“a” : 0000 0000 0001 0010
汉字“中”: 0000 0000 1001 0010

升级:
一个字符 用32位 4个字节表示
字母“a” : 0000 0000 0001 0010 0000 0000 0001 0010
汉字“中”: 0000 0000 1001 0010 0000 0000 1001 0010

有点:支持更多国家及种类的字符
弊端:浪费资源。

utf-8:最少用8位表示一个字符
a : 0000 0010 8位表示一个字符
欧洲: 0000 0010 0010 0000 16位 两个字节表示一个字符
中: 0000 0010 0000 0010 0000 0010 24位 3个字节表示一个字符

gbk:国标 只包含英文与自己国家的文字
a: 0000 0010 8位一个字节表示一个字符
中:0000 0010 0000 0010 16位 两个字节表示一个字符

'old男孩'
GBK:7个字节
utf-8:9个字节

8bit == 1 bytes
1024bytes == 1 kb
1024 kb == 1 Mb
1024Mb == 1 Gb
1024Gb == 1 Tb