算术操作符:

+    -    *    /       %    **    //
 如

>>> a = 5
>>> a = a + 3
>>> a

8
等同于

>>> a = 5
>>> a += 3
>>> a
8

>>>   
又如

>>> a = b = c = d = 10
>>> a += 1
>>> b -= 3
>>> c  *= 10
>>> d  /= 8    #这里的除于/号在python3里面已经可以精确得出浮点数的结果。如果需要整数,则需要用//号
>>> a
11
>>> b
7
>>> c
100
>>> d
1.25

>>> 
 //使用:

>>> 10 // 8
1
>>> 3.0 // 2
1.0

>>>

%是指求余数的意思

>>> 5 % 2
1
>>> 11 % 2
1
>>> 16 % 6
4

>>> 
  
**指幂运算操作符
>>> 3 ** 2

9
>>> 3 ** 5
243
>>>

优先级问题:
当多个运算符同时出现在一个表达式的时候,严格按照优先级进行运算。
先乘除后加减,遇到括号优先算。
如

>>> -3 * 2 + 5 / -2 - 4
-12.5
>>> ((-3) * 2) + (5 / (-2)) - 4
-12.5
>>> 
注意:括号是必要的但不是必须。在必要的表达式加上括号,便于程序维护。 

幂操作符比其左侧的一元操作符优先级高,比右侧的一元操作符优先级低
如
 >>> -3 ** 2

-9
>>> -(3 ** 2)
-9
>>> 3 ** -2
0.1111111111111111
>>> (3 ** (-2))
0.1111111111111111
>>>

比较操作符
 <    <=    >    >=    ==    !=
逻辑操作符
and       or        not
and 指当它的左侧和右侧同时为真(True)的时候,结果才为真(True)
or指左边或者右边的任意一边为真(True)的时候,结果就为真(True),当两边同时为假(False)的时候,结果才为假(False)
not是一元操作符,只有一个操作数,把它的操作数取一个相反的布尔类型值。
如

>>> not True
False
>>> not False
True
>>> not 0#这里的0表示为False
True
>>> not 4#所有非零的数字表示为True
False
>>>

优先级问题:
 幂运算**    正负号 +X  -X     算术运算符* /  // + -         比较操作符 < > <= >= == !=    逻辑运算符not and or 
 
测试题:
0. Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢?
  答:1.0
1. a < b < c 事实上是等于?
答:(a < b) and (b < c)  
2. 不使用 IDLE,你可以轻松说出 5 ** -2 的值吗?
答:5 ** -2等于5的-2次方,即0.04(第一次居然算成-25,中学数学白学了。)
3. 如何简单判断一个数是奇数还是偶数?
答,看看能否被2整除。
使用求余可以简单得到答案:能被 2 整除为偶数,所以 x % 2 == 0,否则为奇数。
表达式如下

a = input('输入一个数,判断是奇数还是偶数')
num = int(a)
if num/2 == int (num/2):
    print(a + '是偶数')
else:
    print(a + '是奇数') 
或者

a = input('输入一个数,判断是奇数还是偶数')
b = int(a)
if b%2 == 0:
    print(a + '是偶数')
else:
    print(a + '是奇数')

 加入一个非数字判断:

 
a =input('请输入一个数字')
while not a.isdigit():
    a = input ('这不是数字,请重新输入')#这里判断是否为数字,如果返回False,则回到while继续循环,如果返回True,则执行下一句
b = int(a)
if b%2 ==0:
    print(a + '是偶数')
else:
    print(a + '是奇数') 

4. 请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9

答:4,直接在python运算结果。自己算晕了。not or and 的优先级是不同的:not > and > or
我们按照优先级给它们加上括号:(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
== 0 or 0 or 4 or 6 or 9
== 4
为啥是 4?
大家还记得第四讲作业提到的“短路逻辑”吗?3 and 4 == 4,而 3 or 4 == 3。
所以答案是:4
温馨提示:为了更好的表达你的程序,小甲鱼再次呼吁有些括号还是不能省下的,毕竟不是所有程序员都跟你一样都将优先级烂透于心的。 
5. 还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用什么方法可以“委曲求全”代替“%”的功能呢? 

答:不知道
if year/400 == int(year/400)

操作题:
0. 请写一个程序打印出 0~100 所有的奇数。 
教程参考答案:

 慢慢消化。
i = 0
while i <= 100:
    if i % 2 != 0:#如果要打印全部偶数,则改为i%2 != 0,如果要打印全部能被3整除的数字,则改为i%3 == 0,以此类推。
        print(i, end=' ')
        i += 1
    else:#如果这里没有else,则程序执行完上一句后等待,因为打印完第一个数后没指令,也没结束if的循环。
        i += 1
我自己琢磨出的答案 (貌似还不够智能。)
a = 50
i =1
while a:
    print(i)
    i = i + 2
    a = a - 1
 思路:100以内的奇数一共有50个,每个奇数之间相差2。上节课作业有做到这个效果如下:

>>> 
请输入一个整数:5
1
2
3
4
5
>>> 
 源代码如下

temp = input ('请输入一个整数:')
num = int (temp)
i = 1
while num:
    print(i)
    i = i + 1
    num = num - 1
 根据这个源代码修改而成。 

1. 我们说过现在的 Python 可以计算很大很大的数据,但是......真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?

不会
print(2 ** 2 ** 32)
# 一般很多机子都会在一会儿之后:Memory Overflow,内存不够用。
# 设计到幂操作,结果都是惊人滴。
2. 爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。
 题目:请编程求解该阶梯至少有多少阶?  
不会啊!(存底,慢慢消化。)

 
x = 7
i = 1
flag = 0
 
while i <= 100:
    if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
        flag = 1
    else:
        x = 7 * (i+1)
    i += 1
 
if flag == 1:
    print('阶梯数是:', x)
else:
    print('在程序限定的范围内找不到答案!')
 

在论坛看到有人这样写,更简洁

 
i = 1
while (i%2!=1 or i%3!=2 or i%5!=4 or i%6!=5 or i%7!=0):
    i += 1
print(i)

006 Python的操作符的更多相关文章

  1. Python常用操作符

    Python常用操作符 1.成员关系操作符in 显示的数字前面填充'0'代替空格 6.转义字符 符号 含义 \' 单引号\" 双引号\a 发出系统响铃声\b 退格符\n 换行符\t 横向制表 ...

  2. Python比较操作符、变量赋值、对象拷贝

    Python比较操作符.变量赋值.对象拷贝 目录 Python比较操作符.变量赋值.对象拷贝 1. 比较操作符 == 和 is 1.1 区别 1.2 实例 2. 变量及其赋值 2.1 概念和逻辑关系 ...

  3. python operator操作符函数

    本模块主要包括一些Python内部操作符对应的函数.这些函数主要分为几类:对象比较.逻辑比较.算术运算和序列操作.

  4. 006 python操作符

    一:数值操作符 1.操作符 2.不同点 上面有了一个说法,这个 / 与其他的编程不同. 这个是精确的除法. 3.连续赋值 这种用法,第一次遇见,就记录下来. 4.注意点 重要的是要注意优先级的问题 二 ...

  5. 刷题翻车:python 布尔运算操作符的优先级

    前两天在 xue.cn 体验答题挑战,我有道题做错了,却不明白错在哪里.题目大概如下,代码运行后将打印什么? if True or False and False: print('1') else: ...

  6. Python 序列操作符与函数(字符串)

    Python序列包括:元组.列表.字符串. 1.1 序列共同支持的函数: 函数 功能 说明 cmp(seq1,seq2) 比较序列大小 从左到右依次比较,直到比较出大小 len(seq1) 获取序列长 ...

  7. python表达式操作符【学习python必知必会】

    运算符 描述 实例 yield x 生成器函数发送协议   lambda args: expression 生成匿名函数   x if y else z 三元选择表达式(c系列有的 python也要有 ...

  8. python列表操作符

    list1=[123,456] list2=[234,234] list1>list2 >>>False#返回False 第一项比较之后直接返回false,第二项不看 #+实现 ...

  9. 006 python的面向对象基础

    1.类 描述具有相同属性与方法的对象的集合. 2.创建类 使用class来创建一个新类,class之后为类的名称并以冒号结尾 3.程序 #!/usr/bin/python # -*- coding: ...

随机推荐

  1. 找出数组前N大的数

    这个题也是个比较有名的面试题.当然有很多变种. 题目意思基本是:从一个数据量很大的数组里找前N大的元素.不允许排序. 这个题有两个比较好的思路: 思路一:用快速排序的思想,是思想,不是要排序; 思路二 ...

  2. Android开源工具库

    一.依赖注入DI 通过依赖注入降低View.服务.资源简化初始化,事件绑定等反复繁琐工作 1. AndroidAnnotations(Code Diet) android高速开发框架 项目地址:htt ...

  3. [Whole Web] [Node.js, PM2] Controlling runaway apps using pm2

    shows how to enable features in your pm2 config file that allow you to prevent runaway apps from bri ...

  4. python 2016 大会 pyconsk ppt ---python dtrace

    https://github.com/pyconsk/2016-slides PyCon SK 2016 - March 2016 1DTrace and PythonJesús Cea Aviónj ...

  5. php笔记05:http协议中防盗链技术

    倘若我们自己在电脑上写了一个网站文件(可以是html,php文件等等),但是只希望本机可以访问这个文件,不希望别的电脑访问就需要这里的防盗链技术 1.我们在本地写了一个import.php文件: 而且 ...

  6. frameset和iframe--框架对象及元素标签对象

    chrome不兼容:不支持跨frame的变量的获取 var oParent = parent.document.getElementById('contentFrm'); //frameset标签对象 ...

  7. iOS 跳转至 指定 StoryBoard 中 指定的 Scene

    UIStoryboard *stryBoard=[UIStoryboard storyboardWithName:@"second" bundle:nil]; UIViewCont ...

  8. Linux下如何在打开终端的时候自动配置相关环境

    参考博客“Linux启动文件.设置环境变量的位置”(http://www.2cto.com/os/201305/208251.html) 在不可取的root权限的时候可以选择编辑~/.bashrc文件 ...

  9. CDOJ-10(栈的应用)

    In Galgame We Trust Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Othe ...

  10. 万网免费主机wordpress快速建站教程-域名绑定及备案

    进入主机管理界面,点击管理 点击域名绑定,绑定域名项选择已有域名,选择已购买的域名,点击一键解析域名,点击添加,即可完成域名解析工作. 由于没有备案,备案状态显示为未备案,点击旁边的备案链接,跳转至阿 ...