Python入门教程之运算符与控制流


Posted in Python onAugust 17, 2016

Python 中的运算符

什么是运算符?举个简单的例子 4 +5 = 9 。 例子中,4 和 5 被称为操作数,"+" 称为运算符。

1 . 求幂运算符

在 Java 中如果我们想对一个数进行求幂运算,我们可能要借助于 Math 库中的 pow() 函数,但是在 Python 中我们可以使用两个连续的 * 表示求幂运算。

a = 5 ** 2
print a

2 . // 运算符

可能很多人要说了,这个我认识,我打注释经常用双斜杠,可是很尴尬, Python 中的单行注释符号为 # ,多行注释可以使用 ''' ,那么 // 是用来干嘛呢?用来求两数相除的整数部分。

a = 10.0 // 3
print a

这个时候就会输出 3.0 ,也就是相除的整数部分,余数被忽略。

3 . & , | 运算符

这两个运算符大家都认识, & 按位与 , | 按位或,下面来讲讲这两个运算符的运算原理,看一个数 7&18 等于多少呢? 放到编译器里运行一下试试吧

a = 7 & 18
print a

打印的结果为 2 ,为什么呢?很简单,我们首先需要将 7 和 18 转换为 二进制, 7-> 00000111 18->00010010 , 然后将这两个二进制进行与运算,什么是与运算呢?只需要记住两个数同一位置上都为 1 的时候结果为 1 ,其他都为 0 即可。运算过程如下

Python入门教程之运算符与控制流

很明显结果是 2 , | 运算符和 & 运算步骤一样,不过 | 运算过程中,两个数同一位置上只要有一个是 1 ,则结果就是 1 ,可以自己去运算一下,这里就不在赘述了。

4 . >>,<< 运算符

第一眼看到这个符号,我的第一反应是远远大于和远远小于,这是是右移和左移的意思,左移和右移?怎么移?同样的需要将十进制数转化为二进制形式,然后进行左移和右移,其实左移一次等于是让一个数乘以 2 ,左移 n 次就是让一个数乘以 2 的 n 次,右移则相反,是除以 2 的 ‘n' 次方。

# coding=utf-8

# 左移2位
a = 5 << 2
print a

# 右移三位
b = 32 >> 3
print b

5 . not, and, or 运算符

这三个是逻辑运算符,在其他的编程语言中如果你想表示或与非,你可能会使用这样的格式 ||,&&,! ,但是在 Python 中需要使用 or,and,not 。

a = True
b = False

c = not a
d = a and b
e = a or b

print c
print d
print e

结果依次为 False False True

6 . 我们不在介绍运算符,来看看运算符的优先级,我做了个图

Python入门教程之运算符与控制流

越靠近鱼头,等级越高。

Python 控制流

所谓控制流,无非也就是 if..else,while,for 等。基本的使用大家都会,不过 Python 总有它特殊的地方,下面来看看。

1 . if...else

if 判断语句有一个值得介绍的地方,如下所示

a = 10
if 5 <= a <= 10:
  print a

在 Java 语言中,你恐怕要这么写

int a = 10;
if(a >= 5 && a <= 10){
  System.out.println(a);
}

2 . while , for

唯一需要记住的一点就是,在 Python 中,无论是 for 还是 while ,都可以像 if 一样,在后面加 else 语句, else 语句在循环语句跳出来之后会执行。

a = False
while a:
  print ("I am while")
else:
  print ("I am else")

for i in range(1, 2):
  print ("I am for")
else:
  print ("I am else")

小提示: range() 函数可以设置步数间隔,什么意思?自己去试试吧~

总结

以上就是关于Python中运算符与控制流的全部内容,这篇文章讲的是基础入门知识,但也是很重要的一部分,希望对大家使用Python能有所帮助。

Python 相关文章推荐
浅析Python中的多进程与多线程的使用
Apr 07 Python
简单实现python进度条脚本
Dec 18 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
对python中Librosa的mfcc步骤详解
Jan 09 Python
详解python爬虫系列之初识爬虫
Apr 06 Python
python多线程下信号处理程序示例
May 31 Python
python opencv摄像头的简单应用
Jun 06 Python
python实现文本进度条 程序进度条 加载进度条 单行刷新功能
Jul 03 Python
基于Python实现人脸自动戴口罩系统
Feb 06 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
Feb 28 Python
Python3自动生成MySQL数据字典的markdown文本的实现
May 07 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
Oct 22 Python
python 循环while和for in简单实例
Aug 16 #Python
Python自动化测试ConfigParser模块读写配置文件
Aug 15 #Python
Python自动化测试Eclipse+Pydev 搭建开发环境
Aug 15 #Python
详解python的几种标准输出重定向方式
Aug 15 #Python
如何将python中的List转化成dictionary
Aug 15 #Python
怎样使用Python脚本日志功能
Aug 14 #Python
Python函数的周期性执行实现方法
Aug 13 #Python
You might like
PHP数组排序函数合集 以及它们之间的联系分析
2013/06/27 PHP
sae使用smarty模板的方法
2013/12/17 PHP
php中的strpos使用示例
2014/02/27 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
PHP的自定义模板引擎
2017/03/24 PHP
JavaScript中的类继承
2010/11/25 Javascript
jquery插件制作教程 txtHover
2012/08/17 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
js实现简洁的滑动门菜单(选项卡)效果代码
2015/09/04 Javascript
JS实现的简单轮播图运动效果示例
2016/12/22 Javascript
Vue监听数组变化源码解析
2017/03/09 Javascript
JS实现css hover操作的方法示例
2017/04/07 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
详细介绍RxJS在Angular中的应用
2017/09/23 Javascript
Angular5.1新功能分享
2017/12/21 Javascript
jquery动态添加以及遍历option并获取特定样式名称的option方法
2018/01/29 jQuery
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
Python3实现并发检验代理池地址的方法
2016/09/18 Python
python 控制Asterisk AMI接口外呼电话的例子
2019/08/08 Python
Python帮你识破双11的套路
2019/11/11 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
Python+Opencv实现把图片、视频互转的示例
2020/12/17 Python
HEMA英国:荷兰原创设计
2018/08/28 全球购物
世界顶级户外运动品牌折扣网站:LeftLane Sports
2019/06/12 全球购物
Trench London官方网站:高级风衣和意大利皮夹克
2020/07/11 全球购物
婚庆公司的创业计划书
2014/01/22 职场文书
新品发布会主持词
2014/04/02 职场文书
党的群众路线教育实践活动调研报告
2014/11/03 职场文书
投资合作意向书范本
2015/05/08 职场文书
用CSS3画一个爱心
2021/04/27 HTML / CSS
React 高阶组件HOC用法归纳
2021/06/13 Javascript
浅析CSS在DevTools 中架构演变
2021/10/05 HTML / CSS