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中逻辑运算符的使用
May 13 Python
python 基础教程之Map使用方法
Jan 17 Python
Python学生信息管理系统修改版
Mar 13 Python
PyQt5每天必学之滑块控件QSlider
Apr 20 Python
对Python中type打开文件的方式介绍
Apr 28 Python
Python实现二叉树的常见遍历操作总结【7种方法】
Mar 06 Python
python找出一个列表中相同元素的多个索引实例
Jun 11 Python
使用python 写一个静态服务(实战)
Jun 28 Python
Python使用matplotlib 画矩形的三种方式分析
Oct 31 Python
python抓取多种类型的页面方法实例
Nov 20 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
Apr 10 Python
python爬虫请求库httpx和parsel解析库的使用测评
May 10 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基础知识:函数基础知识
2006/12/13 PHP
三个类概括PHP的五种设计模式
2012/09/05 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
浅谈php中curl、fsockopen的应用
2016/12/10 PHP
php精度计算的问题解析
2019/06/21 PHP
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
判断一个变量是数组Array类型的方法
2013/09/16 Javascript
JavaScript splice()方法详解
2020/09/22 Javascript
jquery实现动态菜单的实例代码
2013/11/28 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
2015/03/16 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
webpack打包react项目的实现方法
2018/06/21 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
2018/10/26 jQuery
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
浅谈python numpy中nonzero()的用法
2018/04/02 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
pytorch实现线性拟合方式
2020/01/15 Python
Big Green Smile德国网上商店:提供各种天然产品
2018/05/23 全球购物
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2015/09/07 面试题
我的网上商城创业计划书
2013/12/26 职场文书
办公室综合文员岗位职责范本
2014/02/13 职场文书
电焊工岗位职责
2014/03/06 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
安全生产先进个人总结
2015/02/15 职场文书
幼儿园家长反馈意见
2015/06/03 职场文书
教师反邪教心得体会
2016/01/15 职场文书
python自动化之如何利用allure生成测试报告
2021/05/02 Python
html+css实现文字折叠特效实例
2021/06/02 HTML / CSS
vue3语法糖内的defineProps及defineEmits
2022/04/14 Vue.js