# -*- coding:utf-8 -*-

# 运算符

a,b=10,20

    # 算术运算符:包括+、-、*、/、%、**、//运算
print "********************1***********************"
print a+b,a-b,a*b,a/b,a%b
print 2**3 # 幂预算 表示2的3次幂,返回8
print 20//7 # 取整除,返回整数部分

    # 比较运算符:==、!=、<>、>、<、>=、<=
print "********************2***********************"
print a==b,a!=b,a<>b,a>b,a<b,a>=b,a<=b

    # 赋值运算符:=、+=、-=、*=、/=、%=、**=、//=
print "********************3***********************"
a=b
a+=b
a-=b
a*=b
a/=b
a%=b
a**=b
a//=b

    # 位运算符:&、|、^、~、<<、>>
print "********************3***********************"
print a&b
print a|b
print a^b
print ~a
print a<<2
print a>>2

    # 逻辑运算符:and、or、not
print "********************4***********************"
a=10
b=20
print a and b # 如果a为False则返回False,否则返回b的值
print a or b # 如果a为非0,返回a的值,否则返回b的值
print not a # 返回a的非值

    # 成员运算符in、not in,用于判断元素是否在字符串、列表或元组中
print "********************5***********************"
m='abcde'
n='a'
print n in m
print n not in m

    # 身份运算符is、is not用于比较两个对象的存储单元,is和==的区别在于两个引用对象是否为同一个,==用于判断是否值相等
print "********************6***********************"
x=2.0
y=2.0
print x is y # 这里很有意思,在交互环境里返回False,但是直接执行返回True,这个主要是由于对于python来说存储好的脚本文件和在交互环境中的执行环境不同导致的
             # 对于脚本文件,解释器将其当作整个代码块执行,对于交互式命令行中的每一行命令,解释器都将其当作单独的代码块执行。而python在执行同一个代码块
             # 的初始化命令中的对象时,会先检查值是否存在,若存在,则会重用。那么我将x和y都设置为10结果是什么呢?结果是在脚本执行和交互环境中都返回True
             # 为啥?这里是因为它将-5~256的整数进行了缓存,Python中把这些小整数都缓存了一份,所以不管你怎么输入都返回True。

y=10
print x is y # 返回False

    # 运算符优先级,优先级由高到低:
    # ** 指数
    # ~+- 反转运算,这里的+-表示一元加减
    # */%// 乘、除、取模、取整除
    # +- 加、减
    # <<、>> 左移、右移
    # & 与运算
    # ^| 异或和或运算
    # <=、<、>、>= 比较运算符
    # <>、==、!= 等于运算符
    # =、%=、/=、//=、-=、+=、*=、**= 赋值运算符
    # is、is not 身份运算符
    # in、not in 成员运算符
    # not、or、and 逻辑运算符

Python笔记(三)的更多相关文章

  1. guxh的python笔记三:装饰器

    1,函数作用域 这种情况可以顺利执行: total = 0 def run(): print(total) 这种情况会报错: total = 0 def run(): print(total) tot ...

  2. Python笔记(三)继承和多态、动态语言

    一.继承 先定义一个A类 class A(object): def fun(self): print "Run A fun()" 在定义一个B类 class B(A): pass ...

  3. MOOC python笔记(三) 序列容器:字符串、列表、元组

    容器概念 容器是Python中的重要概念,分为有序与无序. 有序容器也称为序列类型容器,如:字符串.列表. 通用序列容器操作 容器连接+ 加号可以把两个序列连接成一个更大的容器,相加后两个序列的值并不 ...

  4. python笔记三(面向对象)

    Python3 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触 ...

  5. python笔记三(list、tuple)

    一.list list的增删改查 #增, classmates.append("nadech") #在末尾追加一个元素 classmates.insert(1,"agui ...

  6. python笔记三:函数式编程

    1.概念: 函数式编程就是一种抽象程度很http://i.cnblogs.com/EditPosts.aspx?opt=1高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要 ...

  7. Python笔记(三十)_python标准异常总结

    python标准异常总结 AssertionError 断言语句(assert)失败 AttributeError 尝试访问未知的对象属性 EOFError 用户输入文件末尾标志EOF(Ctrl+d) ...

  8. python笔记三

    # 数据读写不一定是文件,也可以在内存中读写 # StringIO就是在内存中读写str from io import StringIO f = StringIO() # 要把str写入StringI ...

  9. Python笔记(三)_字典与集合

    字典dict 映射类型,以键-值的方式存储,通过键来取相应的值 member={'one':1,'two':2,'three':3} 创建字典member=dict('苹果'='apple','桔子' ...

  10. Python 学习笔记三

    笔记三:函数 笔记二已取消置顶链接地址:http://www.cnblogs.com/dzzy/p/5289186.html 函数的作用: 給代码段命名,就像变量給数字命名一样 可以接收参数,像arg ...

随机推荐

  1. 大白话理解this

    日常开发中,我们经常用到this.一开始常会用一种感觉去判断this的指向,当遇到复杂的函数调用时,就分不清this的指向. 今天我们来由浅入深来学习下. function family1(){ va ...

  2. 数组、ArrayList、HashTable

    相同点:都可以存储一组数据 不同点: 1)数组,必须要先分配空间,存储数据固定 2)ArrayList,存储数据可以自由扩展 3)HashTable与ArrayList一样,但是它是有意义的,键值对形 ...

  3. 用来生成get set string 方法

    https://projectlombok.org/ 主要是用来生成get set string 方法等等 原理是注解

  4. <转>Socket编程——基础介绍

    最近系统的看了下unix网络编程的一些内容,对socket的理解有了进一步的加深,在看APUE的时候,那会儿看socket上面介绍的比较少,只是模糊的懂了如何去写一个简单的TCP服务端和客户端,对其中 ...

  5. Elasticsearch学习(一)————简单命令

    Elasticsearch一.简介**Elasticsearch 是一个分布式的搜索和分析引擎,可以用于全文检索.结构化检索和分析,并能将这三者结合起来.Elasticsearch 基于 Lucene ...

  6. vj线段树专题

    vj线段树专题题解 单点更新模板 void build(int x,int l,int r){//sum[x]控制l-r区域 if(l==r){Sum[x]=num[l];return ;} int ...

  7. linux笔记常用命令

    LINUX成长日记 1.本人工作实例:(将一台服务器的数据库复制到另外一台服务器上) scp -r -P 8351 /bak_mysql/sz_b2b2c201705180200.sql root@1 ...

  8. Centos7安装keepalived(自定义路径安装)-高级篇

    0.Keepalived介绍 Keepalived是一个基于VRRP协议来实现的服务高可用方案,可以利用其来避免IP单点故障,类似的工具还有heartbeat.corosync.pacemaker.但 ...

  9. linux部署.net core api并且实现上传图片

    为了体验.net在linux上运行,所以使用HttpClient东借西抄做了一个简单的api上传功能. 第一步,简单的上传功能: public class UploadHelper { private ...

  10. React传递参数的多种方式

    最常见的就是父子组件之间传递参数 父组件往子组件传值,直接用this.props就可以实现 在父组件中,给需要传递数据的子组件添加一个自定义属性,在子组件中通过this.props就可以获取到父组件传 ...