时间: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--d
e/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))
执行结果:
True
True
True
1 str = "liyongjianx@163.com"
2 print(str.endswith("@163.com"))3 print(str.endswith("x",9))4 print(str.endswith("jian",6,10))
执行结果:
True
False
True
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
欢迎加qq群:882177851