赞
踩
本文会很长,包含了很多函数,请认真阅读。
我会尽量以最精简的方式向您介绍。(包含上次我剩下的input函数转换类型方法)
目录
经过《深思熟虑》后,dict,set,tuple等内容将放在下一篇文章:《[4]Python数据类型【2】》,望见谅
str,就是字符串。
字符串可以包含任何字符。
引号("")表示字符串。
由于Python对char和string的区分并不明显,所以用''也能勉强运行(不建议,除非在双引号内用)。
注意:“”,‘’等中文符号不可以。
"1223",
"wwwww",
"True",
"as鱲䯦大龘111",
"M<>Sd+=="
都是合法字符串。
【1】中文的双引号、单引号不可以被用作字符串标识符
str()函数将数据转化为str类型。
同input函数一样,str()函数需要赋值给一个变量,如a=str(111)。
a=str(100),则a="100"。
a=str([1,2,"1","2"]),则a="[1,2,'1','2']"
以此类推。
str其实是一个类(class)。
str(数据):数据可以是任何要转换成str类型的东西,连字符串本身都不例外!
len函数不仅用作字符串,还可以应用于其他类型(如列表,元组等)
len计算字符串的长度
len("1")=1
len("3")=1
len("kf12hg")=6
len("!>@#$%^&*()?")=12
字符编码
如:
- string="string"
- string2=string.encode("utf-8")
如何解码?
用decode
- string="string"
- string2=string.encode("utf-8")
- string3=string2.decode("utf-8")
当解码/编码时遇到错误的字符,有以下几种方式:
【1】什么也不写,如str.encode("utf-8")或str.decode("utf-8")
以及将errors参数设为"strict",
如str.encode("utf-8",errors="strict")或str.decode("utf-8",errors="strict"):
当遇到错误字符是报错。
【2】将errors参数设为"ignore",
如str.encode("utf-8",errors="ignore")或str.decode("utf-8",errors="ignore"):
忽略错误字符。
【3】将errors参数设为"replace",
如str.encode("utf-8",errors="replace")或str.decode("utf-8",errors="replace"):
用?代替非法字符。
【4】将errors参数设为"xmlcharrefreplace",
如str.encode("utf-8",errors="xmlcharrefreplace")或str.decode("utf-8",errors="xmlcharrefreplace"):
使用XML的字符引用。
split表示分割。【返回列表】
str.split(sep,maxsplit)
sep表示用什么分割,如果不填,默认为空格,换行和缩进。
maxsplit表示分割次数。不填和-1表示分割全部。
例子:"11211"用split(sep="2")分割,结果为:["11","11"],分割的“2”被去掉,中间的部分组成一个列表。
例2:"1 2 3 4"用split(" ",maxsplit=2)分割,结果为:["1","2","3 4"]
join基本是split的“反义词”。
string2=string.join(iterable)
举个例子:
有一个列表list1,是["1","2","3","4"];
接下来,我们这样操作:
print(" ".join(list1))
结果是:1 2 3 4
它是一个字符串。
join把它前面的字符串插入到每个元素之间的地方。
很有趣的一点是,如果
a=str.split("一个字符串")
b="一个字符串".join(a)
那么,b=str.
str.index(substr,start,end)
其中,start和end不用一定要填。
substr表示寻找的字符串。
start和end表示搜寻范围的起始和结束位置。【默认为整个字符串】
index表示查找某个字符,并返回第一次出现的位置。
它把越靠左边的字符认定为越靠前。(区别于rindex)
string="123"
a=string.index("1"),则a=0(Python里,第一位是0,第二位是1,第三位是2,以此类推)
但是,如果查找的字符不存在,就会报错。
它的作用和index类似,只是把越靠右边的字符认定为越靠前。
startswith表示是否以某字符串开头。
endswith表示是否以某字符串结尾。
共同参数:【start/end】
start表示检索起始位置(默认为从头)
end表示检索结束位置(默认为结尾)
没有参数,作用为将字符串转为全部小写
同lower,只是将字符串转为全部大写
str.strip(chars)
chars可以为多个,默认为空格,缩进以及换行等空字符。
strip可以去掉函数首尾两边的字符。
例:
str="abbcadae"
print(str.strip("abe"))
输出:cad
把两边所有的a,b,e都去掉了,因为a,e首先去掉,后面的b,a变成了首尾位,再次检索,直到两边检索不到为止。
另一个a因为在中间,两边的c,d并未被删掉,所以也没有被去掉。
基本等同于strip,但是lstrip只去首,rstrip只去尾。
string[start:end:stop]
start【默认为0】表示起始
end【默认为-1(即一直到尾)】表示结束,但不包含结束的字符
step【默认为1】表示截取的跨度,如果为2则表示每2个截取第一个
例:
"123"[1]="2" #只截取单字符
"12345"[1:4]="234" #截取一串,从1(第二位)到4(第五位)但不包含4(第五位)
"12345"[1:]="2345"#截取一串,从1(第二位)到结尾(默认)
"12345"[:4]="1234" #截取一串,从头【默认】到4(第五位)但不包含4(第五位)
"12345"[1:4:2] =“24”#截取一串,从1(第二位)到4(第五位)但不包含4(第五位),隔二取一
最后,给你们一种神奇的算法:
"12345"[ : :-1]="54321" #自己想为什么
---------------------------------------------字符串【完】------------------------------------------------------------------
int,即整型变量,表示一个整数,如-1223,12,0,2等。、
随便打上一个数字就行。
不可以和字符串进行拼接或加法运算
"2"+2会报错【与VBA不同】
int()函数把参数转成整型。
注意:只能转字符串,二进制,以及数字!
int("2") -> 2
int("2.7") -> 报错
将一个整数转成十六进制
将一个整数转成八进制
----------------------------------------------整型【完】--------------------------------------------------------------------
说句实话,Python的数据类型相比起C++来说确实是少多了。
直接定义就行:不需要声明【c++】:
int a;
【VBA】:
Dim a As Byte
而且,double,long,longlong,long double,unsigned等一大堆的数据类型都没有。
float指浮点数,也就是小数。
1 , 2 , 3 , 4 , 5 , 6 是int,
1.2 , 3.4 ,5.6就是float.
随便打一个小数就行。
有时小数点位数太多可能会差那么0.000000000000000000001的量,很正常。
把东西转成float类型
因为也属于number,所以基本等同于int.
-------------------------------------float【完】-----------------------------------------------------------------------------
复数x被定义为二元有序实数对(a,b) ,记为z=a+bi,这里a和b是实数,i是虚数单位。在复数a+bi中,a=Re(z)称为实部,b=Im(z)称为虚部。当虚部等于零时,这个复数可以视为实数;当z的虚部不等于零时,实部等于零时,常称z为纯虚数。复数域是实数域的代数闭包,也即任何复系数多项式在复数域中总有根。
——选自复数-百度百科
python中复数同样需要实数位和虚数位,但虚数后面不是i,而是j。
例:(1+3j)就是一个复数。
暂无
complex([real[, imag]]
real有两种格式:数字和字符串。
real为实数部分,imag为虚数部分
real位数字时,imag需要填,不填则默认为0.
imag需要填数字,而不是一个虚数,比如
complex(1,2)->(1+2j)
不需要complex(1,2j)。
【1】-当字符串内是一个复数时:直接转换成复数
【2】-当字符串内是一个实数时:按为数字处理
因为也属于number,所以基本等同于int.
-------------------------------------complex【完】------------------------------------------------------------------------
对(True)错(False)。就这么简单。
直接输就行,没啥子难得。:)
与C++不同,Python里的True和False首字母 必须 要大写。
重要的事情说三遍:
Python里的True和False首字母 必须 要大写!
Python里的True和False首字母 必须 要大写!!
Python里的True和False首字母 必须 要大写!!!
bool(__object)
将__object转成布尔值。
非-not True->False
not False->True
见Python基本语法https://blog.csdn.net/html_finder/article/details/123553622?spm=1001.2014.3001.5501->逻辑运算符https://blog.csdn.net/html_finder/article/details/123553622?spm=1001.2014.3001.5501#t23
-------------------------------------------bool【完】----------------------------------------------------------------------
list是一个列表。
什么是列表?
liè biăo <lɪst>
列 表 ( list )
表示一堆数据【什么都行!!!】整合在一起。
类型是不限制的,字符串、数字和布尔值可以在一个列表中。
---------哈喽,我又回来了。------------
列表由方括号*注意:英文方括号[]*中文的【】是不被允许的。
每一个之间用“,”(同样是英文)分隔
讲一下特点:
【1】列表是有顺序的,哪一个值的位置是固定的!
【2】列表支持修改值
【3】列表允许重复的值:[1,1]是可以的
【4】列表允许不同类型的变量放一块。
见上
list()如果不填值,就表示一个空的列表:[]
a=list() 等同于 a=[]
如果填值呢:
a=list((1,2))->a=[1,2]
木有什么可说的。
Python里是这样遍历列表的:
- for ... in list:
- ...
当然,注意缩进。
Python 里,for 变量 in 列表 之后,变量每次循环它的值都会变成列表里的下一项,以此类推。
等同于4-截取字符串。
在列表中增加一个值。
同样,等于5-index
计算某一个值在列表中出现的次数。
把两个列表合并成一个(交叉合并)
举个栗子:
zip([1,2,3],[4,5,6])
结果是:[1,4,2,5,3,6]
交叉地和成一个了
去掉列表的末尾值。
--------------------------------------------------------list完------------------------------------------------------------------
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。