Python学习记录(基础-2)

Python内建类型

主要的内建类型有数字、序列、映射、类、实例和异常

Python 数据类型

数字

整型Integers:进行的运算都是整数。如

>>>a = 10/3
>>>a
3

长整型Long Integers:长整型是整型的超集。即,长整型可以表示比整型更大的数。python的长整型能表达的数值跟电脑支持的(虚拟)内存有关。例如

>>>a = 123456L

浮点数 Floating Point Numbers:每个浮点型占8个字节(64位)。双精度浮点型。对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。有关浮点型的精度信息以及其在具体机器中的内部特性信息,可在sys.float_info中获取。

>>> float(‘+1.23‘)
1.23
>>> float(‘   -12345\n‘)
-12345.0
>>> float(‘1e-003‘)
0.001
>>> float(‘+1E6‘)
1000000.0
>>> float(‘-Infinity‘)
-inf

复数 Complex Numbers:一个实数和一个虚数的组合构成一个复数。一个复数是一对有序浮点型(x,y),表示为x + yj,yj是虚数部分。现在虚数已经广泛应用于数值和科学计算应用程序中。

a = 1 + 2j#复数的内建属性a.real   #实部a.imag  #虚部a.conjugate() #共轭根式
print(a.real)print(a.imag)print(a.conjugate())

运行结果:

1.0
  2.0
 (1-2j)

Process finished with exit code 0

数据运算

所有的数值类型(复数除外)普通运算操作,我在这里写几种python独有的几个运算符。(注:所有的运算操作的优先级都比比较操作高):

地板除 //:舍去结果的小数部分,返回一个数字序列中比真正的商小的最接近的数字。

x = 5
y = 2
>>>x//y
2

a = -1b = 2>>>a//b-1

幂运算 **:它的执行优先级是比其左侧操作数的一元操作符优先级低,比其右侧操作数的一元操作符优先级高。

>>>9 ** 2
81
>>>-9 ** 2
-81

>>>(-9) ** 2  #括号提高执行优先级
81

>>>4.0 ** -1.0
0.25

位运算

位运算只适用于整型,标准的位运算:~取反, &与,|或,^异或。python的发明者是也是数学家,所以数学方面的运算符很多,而且用起来很方便。 还有就是 左移<<  和右移 >>。

二进制按位操作的优先级都低于数值运算,并高于比较运算;一元操作~具有与其他一元数字操作(+-)相同的优先级。

此表列出按升序排列的按位运算:

操作 结果
x | y x和y的按位或
x ^ y x和y的按位异或
x &amp; y x和y的按位与
x n x左移n位
x >&gt; n x右移n位
~x 反转x的各个位

#举个小栗子,剩下可以自己试试。

>>> a = 65
>>> b =46
>>> a & b
0
>>> a = 1
>>> b = 1
>>> a & b
1

关于二进制的左移右移运算,会牵扯出一些原码补码的问题。自己想理解的透彻一点,所以在这里留个白,以后补上 :)

时间: 2024-11-08 20:10:26

Python学习记录(基础-2)的相关文章

Python学习记录-socket编程

Python学习记录-socket编程 学习 python socket Python学习记录-socket编程 1. OSI七层模型详解 2. Python socket 3. socket()函数 4. TCP socket通信流程 5. Python Internet 模块 1. OSI七层模型详解 以上图见:http://blog.csdn.net/yaopeng_2005/article/details/7064869 其它详情可参考:socket网络基础 2. Python sock

Python学习记录day6

Python学习记录day6 学习 python Python学习记录day6 1.反射 2.常用模块 2.1 sys 2.2 os 2.3 hashlib 2.3 re 1.反射 反射:利用字符串的形式去对象(默认)中操作(寻找)成员 cat commons.py #!/usr/bin/env python#_*_coding:utf-8_*_''' * Created on 2016/12/3 21:54. * @author: Chinge_Yang.''' def login(): pr

Python学习记录day1

Python学习记录博客是本人记录学习python3过程中的一些记录和过程,日后也可以帮助自己温习. python优点: 1.Python入门简单,功能强大,适用性强: 2.开发效率高,第三方库强大且多: 3.Python无需考虑底层细节: 4.可移植性,跨平台: 5.可扩展性: 6.可嵌入性,Pthon可嵌入到C/C++程序中: python缺点: 1.速度慢,Python比C慢很多,比java也慢一点: 2.代码不能加密,源码是明文: 3.线程不能利用多 CPU 问题: python版本2和

Python学习记录day3

Python学习记录 day3 今天是银角大王武sir讲课.先回顾了上节课所学,然后讲到了面向对象思想. set set是一个无序且不重复,可嵌套的元素集合 class set(object):     """     set() -> new empty set object     set(iterable) -> new set object     Build an unordered collection of unique elements.     

Python学习笔记基础篇——总览

Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列表.字典.主文件判断.对象 Python学习笔记——基础篇1[第三周]——set集合 Python学习笔记——基础篇2[第三周]——计数器.有序字典.元组.单(双)向队列.深浅拷贝.函数.装饰器 Python学习笔记——基础篇[第四周]——迭代器&生成器.装饰器.递归.算法.正则表达式 Python

python学习记录第五篇--遍历目录

#coding=utf-8'''@author: 简单遍历目录删除文件的小程序'''import os#查找文件操作def findFile(path): fileList=[] for rootPath,subRoot,fileName in os.walk(path): for sub in fileName: if os.path.isfile(os.path.join(rootPath,sub)): k=os.path.splitext(sub)[1].lower() if k in (

python学习记录第四篇--数据库

只要用到MySQLdb,使用时请先安装MySQLdb,百度上可以下载! #coding=utf-8'''@author: 使用python操作MySQL数据库'''import MySQLdb#import MySQLdb.cursorsconn=MySQLdb.connect(user='root',passwd='root') #connect共三个值,user,passwd,host,无密码且连接本地数据库时,可以都为空.cur=conn.cursor() #创建游标,使用游标进行数据库操

Python学习记录day5

title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 1.多层装饰器 多层装饰器的原理是装饰器装饰函数后其实也是一个函数这样又可以被装饰器装饰. 编译是从下至上进行的执行时是从上至下进行. #!/usr/bin/env python # _*_coding:utf-8_*_ ''' * Created on 2016/11/29 20:38. * @author: Chinge_Yang. ''' USER

Swift学习记录--基础部分

基础部分: 常量和变量 注释 分号 整数 浮点数 类型安全和类型推断 数值型字面量 数值型类型转换 类型别名 布尔值 元组 可选 断言 声明常量和变量 用let来声明常量,用var来声明变量 类型标注 声明常量或者变量的时候可以加上类型标注(type annotation),说明常量或者变量中要存储的值的类型. 如果要添加类型标注,需要在常量或者变量名后面加上一个冒号和空格,然后加上类型名称. var welcomeMessage: String 注意:一般来说很少需要写类型标注.如果你在声明变

Swift学习记录--基础部分2

整数 Swift提供了8,16,32,64位的有符号和无符号的整数类型. 就像Swift的其他类型一样,整数类型采用大写命名法. 整数范围 可以访问不同整数类型的min和max属性来获取对应类型的最大值和最小值: let minValue = UInt8.min //minValue 为0,是UInt8 类型的最小值 let maxValue = UInt8.max //maxValue 为255,是UInt8类型的最大值 Int UInt 注意: 尽量不要使用UInt,除非真的需要存储一个和当