python开发学习日记01(字符串),,时间:2018/12


时间:2018/12/16

作者:永远的码农(博客园)



环境:

win10,pycharm2018,python3.7.1



1.1 基础操作(交互输入输出)

1 input = input("请输入一个字符串:")2 print("你输入的字符串是:",input)
执行结果:请输入一个字符串:python你输入的字符串是: python

1.2 字符串索引分片

1 stu = "hello python"
#索引的使用,跟数组一样的语法2 print(stu[0],stu[1],stu[2],stu[-1],stu[-2])
执行结果:h e l n o
1 stu = "hello python"
#分片的使用方法,目的是提取一部分字符串2 print(stu[1:3],stu[1:],stu[:-1],stu[:])
执行结果:el ello python hello pytho hello python
1 stu = "123456789"
#在索引的基础上添加一个新值"步进",用以表示每隔几个字符取一个字符2 print(stu[1:-1:2])
#表示从第二个字符开始,步进为2,每隔一个字符取一个值,一直取到倒数第1个字符(不包括在内),相当于取出所有偶数值
执行结果:2468

1.3 字符串转换

1 input1 = int(input("请输入一个整数a:"))
#注意一定要使用int()将输入值转换为int型,python中默认所有值都为字符串类型,若不转换则不能相加,而是直接粘在一起

2 input2 = int(input("请输入一个整数b:"))

3 print("a+b=",input1+input2)
执行结果:请输入一个整数a:2请输入一个整数b:4a+b= 6

若没有转换,结果如下:

1 input1 = input("请输入一个整数a:")2 input2 = input("请输入一个整数b:")3 print("a+b=",input1+input2)
请输入一个整数a:22请输入一个整数b:33a+b= 2233

ord()函数和chr()函数的使用:

1 num1 = int(input("请输入ASCII值:"))2 print("该值对应字符为:",chr(num1))3 num2 = input("请输入一个字符:")4 print("该字符对应ASCII值为:",ord(num2))
执行结果:请输入ASCII值:97该值对应字符为: a请输入一个字符:a该字符对应ASCII值为: 97

1.4 字符串格式化

1 maildow = "@163.com"2 loginname = "liyongjian"3 print("你的邮箱地址为: %s%s" %(loginname,maildow))
执行结果:你的邮箱地址为: liyongjian@163.com

python中的字符串格式化代码:

%s     字符串%c     字符及其ASCII码%d     十进制整数%i     整数%u    无符号十进制整数%o     八进制整数%x    十六进制整数%X     十六进制整数大写%e     浮点数%E     浮点数大写 %f     浮点十进制数%g    浮点数e或f%G    浮点数E或F%%     百分号标记%n     用十六进制打印值的内存地址%p     存储输出字符的数量放进参数列表的下一个变量中

字符串格式化的其他方法还有很多,比如利用string.format()函数:

1 print("我叫{},我{}岁了!".format("lyj",21))
执行结果:我叫lyj,我21岁了!

1.5 join()函数

1 letters1 = [‘a‘,‘b‘,‘c‘,‘d‘]2 letters2 = [‘e‘,‘f‘,‘g‘,‘h‘]3 sep = "--"4 print(sep.join(letters1))5 print("/".join(letters2))
执行结果:a--b--c--de/f/g/h

1.6 split()函数

该函数作用:分割字符串,默认分隔符为空格

返回值:一个列表

1 str1 = "A=>B=>C=>D"2 str2 = "E/F/G/H"3 str3 = "A B C D"4 print("分割=>标识符的字符串:",str1.split("=>"))5 print("分割/标识符的字符串:",str2.split("/"))6 print("分割无标识符的字符串:",str3.split())
执行结果:分割=>标识符的字符串: [‘A‘, ‘B‘, ‘C‘, ‘D‘]分割/标识符的字符串: [‘E‘, ‘F‘, ‘G‘, ‘H‘]分割无标识符的字符串: [‘A‘, ‘B‘, ‘C‘, ‘D‘]

1.7 strip()函数

函数作用:去除字符串首尾指定字符,默认去除首尾空格

返回值:去除字符后新的字符串

1 str = "lyjjyls learn python slyjjyl"2 print(str.strip("jyl"))
#去除首尾在[‘j‘,‘y‘,‘l‘]列表内的字符
执行结果:s learn python s

lstrip()函数和rstrip()函数分别只去除首部和尾部的指定字符

1.8 startswith()函数和endswith()函数

startswith()函数作用:判断一个文本是否以某个字符串开头,如果是则返回True,否则返回False

函数原型:startswith(substring,start,end)//substring为比较字符串或字符,start和end分别表示开始比较和结束比较的位置

endswith()函数作用:判断一个文本是否以某个字符串结尾,如果是则返回True,否则返回False

函数原型:endswith(substring,start,end)//substring为比较字符串,start和end分别表示开始比较和结束比较的位置

1 str = "liyongjianx@163.com"2 print(str.startswith("liyong"))3 print(str.startswith("g",5))4 print(str.startswith("yong",2,6))
执行结果:TrueTrueTrue
1 str = "liyongjianx@163.com"2 print(str.endswith("@163.com"))3 print(str.endswith("x",9))4 print(str.endswith("jian",6,10))
执行结果:TrueFalseTrue

1.9 find()函数和rfind()函数

函数原型:find(substring,start,end)//substring为待查找的字符串或字符,start和end表示查找范围

rfind(substring,start,end)//substring为待查找的字符串或字符,start和end表示查找范围

函数作用:查询字符串或字符

返回值:一个数字类型,表示待查字符串或字符的起始位置索引坐标,-1表示字符串或字符不存在

1 str = "liyongjianx@163.com"2 print("从左边开始第一个i坐标为:",str.find("i"))3 print("从右边开始第一个i坐标为:",str.rfind("i"))4 print("从左边开始第一个‘yong‘坐标为:",str.find("yong",0,6))5 print("从左边开始第一个‘yong‘坐标为:",str.find("yong",0,5))
执行结果:从左边开始第一个i坐标为: 1从右边开始第一个i坐标为: 7从左边开始第一个‘yong‘坐标为: 2从左边开始第一个‘yong‘坐标为: -1

1.10 replace()函数

函数原型:replace(substring,newstring,max)//substring为被替换字符串,newstring为替换字符串,max表示替换次数

函数作用:替换字符串或字符

返回值:替换后新的字符串

1 str = "liyongjianx@163.com"2 print("替换前:",str)3 print("替换后:",str.replace("jianx","kangy"))4 print("替换次数0次:",str.replace("i","I",0))5 print("替换次数1次:",str.replace("i","I",1))6 print("替换次数2次:",str.replace("i","I",2))7 print("默认替换所有字符:",str.replace("i","I"))
执行结果:替换前: liyongjianx@163.com替换后: liyongkangy@163.com替换次数0次: liyongjianx@163.com替换次数1次: lIyongjianx@163.com替换次数2次: lIyongjIanx@163.com默认替换所有字符: lIyongjIanx@163.com

1.11 strptime()函数和datetime()函数和strftime()函数

函数原型:strptime(substring,format)//substring为待转换字符串,format为输出的时间格式

返回值:一个保存时间的元组

函数原型:datetime(year,month,day),还有时,分,秒参数可选

返回值:一个datetime类型的变量

python时间格式化命令:

%a  星期几的英文简称%A  星期几的英文全称%b  月份的英文简称%B  月份的英文全称%c  标准日期的时间串%C  年份的前2位数字%d  十进制表示的每月的第几天%D  月/天/年%R  显示小时和分钟:hh:mm%T  显示时分秒:hh:mm:ss
%X 标准时间串
%y 年份的后2位数字.....................................
1 import time
2 print(time.strftime("%Y{y},%m{m},%d{d} %a %A %B %y %X").format(y="年",m="月",d="日"))
执行结果:
2018年,12月,16日 Sun Sunday December 18 20:43:08

python开发学习日记01(字符串)

评论关闭