python数据类型(1)

官网:https://www.python.org/
版本:python v3.6
下一步下一步安装完毕后(注意勾选Add Python 3.6 to PATH),IDEA编辑器下载python插件,就可以愉快的在IDEA上撸python了。
首先,对这个世界say:Hello World!

print('World World!')

一. 数据类型:

  1. 整数、浮点数(理解为小数即可)。

  2. 字符串。可以用单引号 ' ' 或者双引号 “ ”表示。
    2.1、转义字符:\,当字符串里有很多字符需要转义,python允许用r' '表示单引号‘’内部的字符串不需要转义。e.g.

    转义.png

    2.2、如果字符串内部有很多换行,python允许用‘‘‘...’’’表示多行。

    ''''''与r''.png

    2.3、对于单个字符,python提供ord()函数获取字符的整数表示,chr()函数把数值转换成对应的字符。


    image.png

    2.4、bytes类型的数据用带b前缀的单引号或双引号表示:x = b'ABC',注意:b'ABC' != 'ABC'。关于解码与编码,如图:

    encode&decode.png

    len()函数获取的是字符串的字符数,bytes类型的字节数。
    如果bytes类型有一部分无效字节,解码时增加参数:errors='ignore',来忽略无效的字节。

    2.5、字符串的格式化
    python通过%来实现。回到一开始的Hello World!:

    字符串拼接.png

占位符 替换内容
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数

其中格式化整数和浮点数还可以指定是否补0,以及整数和小数的位数。
%4d代表数值不足四位数,高位缺省,不补0,而%03d高位缺省时,补0.
如果不确定替换啥内容,%s通吃。
如果字符串里面已经有%,需要转义%%。(注意:不是用‘\’)。
还有一种格式化方法:format()方法,参数依旧替代占位符{0}、{1}......

image.png

  1. 布尔值
    True、False,注意首字母大写
    运算符:and、or、not

    and&or&not.png

  2. 空值
    None

二. 变量:

python是动态语言,不需要声明变量类型。比如:a = 1

三. 四则运算:

python有两种除法:/ 结果永远是浮点数,即使能整除;// 结果永远取整数,不存在四舍五入。
java当中10/3,结果是整数,10.0/3,结果是浮点数。这点需要区别一下。

两种除法.png

四. list 列表

list是一种有序的集合,对比java当中的list,可以增删改查,也不可越界,否则抛异常:IndexError: list index out of range
声明:list= ['Tom', 'Lucy', 'Lily']

python java
指定位置增 list.insert(index, value) list.add(index, value)
末尾增 list.append(value) list.add(value)
指定位置删 list.pop(index) list.remove(index);
末尾删 list.pop() ——
list[index] = value list.set(index, value)
list[index] list.get(index)
长度 len(list) list.size()
元素类型 可以不同(['ab', 123, True]) 必须相同

注:index代表索引,value代表值。
list当中可以包含list,e.g. list = ['Tom', ['a', 1], 'Lucy'],取值跟二维数组相同,list[1][1]

五. tuple 元组

tuple跟list很类似,但是tuple一旦初始化,就不能更改。
names = ('Tom', 'Lucy', 'Lily')
空tuple:names = ()
当tuple只有1个元素的时候,必须这样声明:names = (1,)。因为数学运算当中也有(),当去掉逗号“,”,就是数字1了。
那么,tuple真的不可更改吗?e.g.

image.png

很显然,我们更改了tuple中list的值。所谓tuple的不可更改,是指其元素的指向不可更改。而元素本身可变,就不可控了。

六. dict 字典

相当于Java当中的map集合。
判断key是否存在,用key in dict方式,或者使用map.get(key, value)方法,如果key不存在,不指定value时,返回None,指定value时,返回value。如下图:

image.png

删除key时,map.pop('hobby'),对应的value也会删除。

七. set 集合

set():元素不重复,最多接受1个参数,参数类型可以是str、list、tuple、dict中的一种,其中dict只会获取key,忽略value,list、tuple中的元素必须是不可变的。
比如:

set((1, 2))   √
set((1, 2, [3, 4]))  X
set([1, 2])  √
set([1, 2, [3, 4]])  X

另外一种定义方式:s = {1, 2, 4}

增加&删除key,还可以获取数学集合中的交集、并集、差集,如下图:


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容

  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 12,229评论 1 118
  • 一、python 变量和数据类型 1.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序...
    绩重KF阅读 5,859评论 0 1
  • 本教程基于Python 3,参考 A Byte of Python v1.92(for Python 3.0) 以...
    yuhuan121阅读 8,494评论 1 6
  • “喂,你是谁?怎么在这里?”一声清脆而冷漠的声音在薰衣草的海洋中响起,与此时安静祥和的气氛格格不入。 “脚长我...
    琳晓雨阅读 2,849评论 2 0
  • 小鱼表面上看起来清清秀秀,模样周正,白白嫩嫩,一直留着小刘海,说话细声细气,声音尖尖,看人的时候眼神含羞带怯——哦...
    在路上的小黑阅读 3,021评论 0 0