一、字符串
简称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)*3
monthAbbrev=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就是说2的3次方是8
也可以pow(x,y)计算x的y次方。例如:pow(2,3)=8
abs(x)为x的绝对值。
自动类型转换
bool->int->float->complex
如1.0+3=4.0
True+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)
0
1
2
>>> 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]