数据类型

来源:互联网 发布:精准扶贫大数据平台app 编辑:程序博客网 时间:2024/05/17 23:08

一、字符串
简称str。使用单引号或者双引号括起来的一系列字符。
字符串是一个字符序列,字符串最左端位置标记为0,依次增加
字符串索引从0开始,一个长度为L的字符串最后一个位置是L-1。

>>> greet="hello world">>> print(greet[2])l>>> x=8>>> print(greet[x-2])w

python同时可以使用负数,从字符串右边末尾向左边进行反向索引,最右边索引为-1.

>>> greet[-4]'o'

此外可以通过两个索引值确定一个位置范围内,返回这个范围的子串

<strint>[<start>:<end>]start和end都是整数数值,这个子序列从start开始到end结束但是不包括end
>>> greet[0:3]'hel'

字符串之间可以通过+或*进行连接,加法操作是将两个字符串连接成一个新的字符串。

>>> "hello"+"world"'helloworld'

乘法操作:构建一个由本身字符串重复连接而成的字符串

>>> 3*"pine"'pinepinepine'

len()函数能够返回一个字符串的长度。

>>> len("helloworld")10>>> len("世界,你好")5

大多数数据类型可以通过str()函数转换为字符串

>>> str(123)'123'>>> str(123e+10)'1230000000000.0'

字符串程序示例
输入一个月份数字,返回月份缩写。
months=”JanFebMarAprMayJunJulAugSepOctNovDec”
在字符串中截取适当的子串来查找特定月份。
找出在哪里来切割子串
每个月份的缩写由3个字母组成,如果pos表示一个月份的第一个字母,则months[pos:pos+3]表示这个月的缩写,即monthAbbrev=months[pos:pos+3]
这里写图片描述
从图片中可以发现,输入的月份数减去1再乘以3就可以找到月份的起始位置

months="JanFebMarAprMayJunJulAugSepOctNovDec"n=input("请输入月份数(1-12):")pos=(int(n)-1)*3monthAbbrev=months[pos:pos+3]print("月份简写是"+monthAbbrev+".")
字符串操作方法采用格式:<string>.func()

这里写图片描述

遍历字符串中的每个字符for<var>in<string>

二、整数。
简称int。

三、浮点数
简称float。
四、布尔数
简称bool。
True,False。注意:首字母大写其余小写。
五、复数。
用j来表示、例如1+1j。

如何知道一个对象是什么类型。
用type来查看。
例如type(‘12’)输出结果为

python中两个**代表指数运算。例如 2**3=8就是说23次方是8也可以pow(x,y)计算x的y次方。例如:pow(2,3)=8abs(x)为x的绝对值。

自动类型转换

bool->int->float->complex如1.0+3=4.0True+3.0=4.0

括号的优先级最高,
这里写图片描述
规则一:自上而下
括号最高
逻辑最低
规则二:自左向右
依次结合
两个相同的运算符同时出现,则先算左边的在算右边的。

标识符

由字母数字下划线组成,可以任意长。但是首个字母必须是字母或者下划线(不能以数字开头),大小写敏感,不能是标识符。

标准键盘输入:
raw_input函数
功能:读取键盘输入,将所有输入当成字符串看待。
语法:raw_input([prompt])
[prompt]是提示符。
例如:radius=float(raw_input(‘Radius:’))
float是强制转换成浮点型 。

元组类型
这里写图片描述
这里写图片描述
元组概念
1、与字符串相似,可以通过索引区间来访问元组中部分元素。t[1:]
2、与字符串一样,元组之间可以使用+和*进行运算 。

列表类型
这里写图片描述
这里写图片描述
这里写图片描述
示例

>>> vlist=[0,1,2,3,4] #定义一个列表>>> vlist*2 #拓展这个列表[0, 1, 2, 3, 4, 0, 1, 2, 3, 4]>>> len(vlist[2:]) #计算列表的长度3>>> for i in vlist[:3]: #循环遍历并打印列表中的长度    print(i)012>>> 2 in vlist #判断一个元素是否在列表中True

这里写图片描述

>>> vlist.append('python') #在列表最后增加一个元素python>>> vlist[0, 1, 2, 3, 4, 'python'] >>> vlist.reverse() #将元素反转>>> vlist['python', 4, 3, 2, 1, 0]>>> vlist.index(3) #寻找元素3在列表中第一次出现的位置2>>> vlist.pop(2) #将位置2的元素取出并删除3>>> vlist['python', 4, 2, 1, 0]>>> 

字符串可以通过split()函数,将字符串拆分为列表。
例如:

>>> "python is a language".split()['python', 'is', 'a', 'language']>>> 

math库与random库
这里写图片描述
这里写图片描述

随机数库

这里写图片描述

>>> from random import *  #使用import引入random>>> random()      #随机生成一个0~1之间的小数0.6437555644989736>>> uniform(1,10)  #在1到10之间随机生成一个小数1.9033578506533182>>> randint(1,10)  #在1到10之间随机生成一个整数4>>> randrange(0,10,2) #生成一个列表2>>> ra=[0,1,2,3,4,5,6,7,8,9] #列表中随机选择一个数>>> choice(ra)6>>> shuffle(ra) #随机改变列表的顺序>>> ra[0, 4, 5, 1, 8, 6, 3, 9, 7, 2]>>> sample(ra,4) #在列表中随机采样4个元素[3, 9, 0, 6]