数字

int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483646

  在64位机器上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

long(长整型)

  跟c语言不通,python的长整数没有指定位宽,即:python没有限制场整数数值大小,但实际上由于机器内存有限,我门使用的长整型不可能无限大。

  注意,自python2.2起,如果整数发生溢出,python自动将整数数据转换为长整数,所以如今不再长整型数据后面加L也不会导致严重后果。

float(浮点数)

complex(复数)暂时用不到

2.布尔值

  真或假

  1或0

3.字符串

字符串的内部原理&万恶的‘+’号

s = “hello alex”

python是c语言开发的。
#c语言,没有字符串:字符串使用字符组表现
hello —五个字符
字符数组 [’h’,’e’,…’o’]
 
所以python中如果对一个字符串进行修改,就是在内存中开辟了一块内存。
比如hello 改成helloaa
并不是将[’h’,’e’,’l’..,o]数组后面加上[a,a]
而是内存中开辟一个空间把前面的hello重写后加上[a,a]
即是:[’h’,’e’,’l’..,’o’,’a’,’a’]
那为什么不是添加,而是重新开辟空间呢?
因为内存的使用地址是连续的。假设你的字符串使用了1-n的内存地址块,从n+1是另一个地址块被其他字符串使用。你说你怎么加[a,a],内存地址n后面已经被使用了。所以内存的处理方法是新开辟了一块地址块将之前的重写在加上需要的内容。
 
结论:字符串的修改,其实是新开辟了一块内存。
所以编程中’hello’+’world’+’..’每有一个+号就会开辟一块新内存,消耗内存。效率低,那么解决方案呢。
 
字符串的格式化:
字符串的格式化有三种方式。

1,使用+拼接模式
2.使用占为符方式  %s 字符串占为符,%d数字占为符
3.使用字符串类的格式化方法,即 str.format()
 
 
优缺点:
1.此等方式开辟内存空间较大,不好,弃用
 
2.此等方式方便,可用
 
3.字符串格式化方法也挺好,可用。
总结:建议使用第二种,常用
 
举例:

#!/usr/bin/env python

#__*__encoding:utf-8__*__

name = raw_input('name:’).stirp()

age = raw_input("age:”).stirp()

job = raw_input("job:”).strip()

print("Information of []:" + name +"\nname :"+name +"\nage []:" + age + "\njob []:" +job)

print("Information of []:%s \n name[]:%s \n age []:%s \n job []:%s" %(name,name,age,job))

string = "Information of []:{0} \n name[]:{1} \n age []:{2} \n job []:{3}"

print string.format(name,name,age,job)

第二种可以美化下:

msg = '''

Information of %s:

name : %s

age  : %s

job  : %s

''' %(name,name,age,job)

print(msg)

第三种方法,可以美化下:

msg2 = '''

Information of {0}:

name : {1}

age  : {2}

job  : {3}

'''

print(msg2.format(name,name,age,job))

使用三个’’’在表达式中制定好格式。

06python 之基本数据类型的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

随机推荐

  1. kubernetes deployment

    deployment是k8s中部署应用最常见的一种方式.如果不需要被访问,那么只需要定义deployment即可.如果需要被其他服务访问,那么可以创建一个service与其绑定,通过访问service ...

  2. Quartz 与 Spring集成

    http://www.cnblogs.com/pigwing/archive/2011/07/12/2104002.html http://blog.arganzheng.me/posts/quart ...

  3. 解决javaWEB 下载文件中文名称乱码问题

    response.setContentType("application/x-msdownload;"); response.setCharacterEncoding(" ...

  4. iOS- 如何将应用集成发短信、发邮件、打电话

    今天把APP里常用小功能 例如发短信.发邮件.打电话. 全部拿出来简单说说它们的实现思路. 1.发短信 实现打电话的功能,主要二种方法,下面我就分别说说它们的优缺点. 1.1.发短信(1)——URL ...

  5. Hbase 学习(一) hbase配置文件同步

    最近在狂啃hadoop的书籍,这部<hbase:权威指南>就进入我的视野里面了,啃吧,因为是英文的书籍,有些个人理解不对的地方,欢迎各位拍砖. HDFS和Hbase配置同步 hbase的配 ...

  6. iOS开发小技巧--取消按钮的选中状态

    首先要自定义按钮,并且实现如下方法,对,就是这么实现!!

  7. s:debug标签的错误ConcurrentModificationException

    搭建SSH的时候页面上加入<s:debug>标签后台出现 严重: Servlet.service() for servlet jsp threw exception java.util.C ...

  8. html块状元素、内联元素

    html块状元素.内联元素 原文在这 块级元素的分类 块级元素按照其应用于结构还是内容分为三种:结构化块状元素,终端块状元素,多目标块状元素. 一.结构化块状元素 这类元素用于构造文档的结构,一个好的 ...

  9. SQL计算表的列数

    select count(syscolumns.name) from syscolumns , sysobjects where syscolumns.id = sysobjects.id and s ...

  10. [随想感悟] 面试时,问哪些问题能试出一个 Android 应用开发者真正的水平?【转自知乎】

    这几年面过的各种Android开发也有三位数了,failed的不敢说,pass的基本都没有看走眼,来得晚了也想说说我的体会. 一般面试时间短则30分钟,多则1个小时,这么点时间要全面考察一个人难度很大 ...