python基础知识-03-字符串
1、for循环遍历字符串中单个字符
s_str="mcw"
for i in s_str:
print(i)
-----------结果:
m
c
w
2、#计算字符串长度
s_str="mcw"
mcw_len=len(s_str)
print(mcw_len)
------------结果:
3
3、#字符串索引
m_str="mcw"
print(m_str[],m_str[],m_str[])
-----------结果:
m w c
4、#让用户输入任意字符串,获取字符串之后并计算其中有多少个数字isdigit()
text=input("请输入内容:")
index_len=len(text)
index=
while True:
val=text[index]
print(val)
if index==index_len -:
break
index+=
text=input("请输入内容:")
index_len=len(text) #输入字符串的长度,
index= #字符串的下角标,下角标为[,index_len-]
count= #对数字个数进行计数
while True:
val=text[index]
if val.isdigit():
print(val)
count+=
if index==index_len -:
break
index+=
print("数字总共有%s个"%(count))
-----------------结果:
请输入内容:mcwff9023ff
数字总共有4个
实现步骤思路:
1、用的是while对输入字符串进行循环打印(while循环字符串需要统计字符串长度,开
头和结尾数字)
2、判断字符是否为数字,打印出数字来
3、初始化一个计数变量,多一个数字就自增一对个数进行统计。
5、#索引取值,从前向后,从后向前取。
6、#切片和索引
-----------------
01234
mcw_str="mcwhr"
------------------
print(mcw_str[],mcw_str[],mcw_str[])
m w r
-------------------
print(mcw_str[-],mcw_str[-],mcw_str[-],mcw_str[-],mcw_str[-])
r h w c m
------------------
print(mcw_str[:],mcw_str[:-],mcw_str[:],mcw_str[:-],mcw_str[:])
wh h whr mcwh mcw
自我注解:[2:4]取下标2,3,不包含4;[3:-1],取指定下标3到最后一个,-1为倒数第一个,不包含最后一个;[2:],从指定下标到最后一个,包含最后一个;[:-1],取下标从0到
最后一个,不包含最后一个;[:3],从开头到下标2做操作,不包含下标3
--------------------
[::]取所有 [::-1]倒着取,步长为1
取最后两个字符[-2:],或者[字符总长度-2,字符总长度],len().
mcw_str="mcwhr"
print(mcw_str[-:])
hr mcw_str="mcwhr"
total_len=len(mcw_str)
v=mcw_str[total_len-:total_len]
print(v)
hr
错误:IndexError: string index out of range
原因:索引超出范围了。
mcw="sfsf"
print(mcw[7])
7、#字符串操作split,#有时间添加awk的切割做对比
split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
1、split()函数
语法:str.split(str="",num=string.count(str))[n]
参数说明:
str:表示为分隔符,默认为空格,但是不能为空('')。若字符串中没有分隔符,则把整个字符串作为列
表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给
新的变量
[n]:表示选取第n个分片
注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略
string = "www.mcw.com.cn"
1.以'.'为分隔符 #指定分隔符切割
print(string.split('.'))
['www', 'mcw', 'com', 'cn']
2.分割两次 #指定分隔符,指定切割次数
print(string.split('.',2))
['www', 'mcw', 'com.cn']
3.分割两次,并取序列为1的项 #指定分隔符,指定次数切割并取指定下标的元素。
print(string.split('.',2)[1])
mcw
4.分割两次,并把分割后的三个部分赋值给三个变量。 #指定分隔符,指定次数分割。分割结果赋值给(次数+1)个变量(疑问,赋值变量个数可以少点吗?)
u1, u2, u3 =string.split('.',2)
print(u1)—— www
print(u2)—— mcw
print(u3) ——com.cn
-----------------------------
5、一个复杂的切割案例:
mcwstr="hello mcw<[www.baidu.com]>byebye"
1)print(mcwstr.split("[")[1])
www.baidu.com]>byebye
2)print(mcwstr.split("[")[1].split("]")[0])
www.baidu.com
3)print(mcwstr.split("[")[1].split("]")[0].split("."))
['www', 'baidu', 'com']
参考文章:https://www.cnblogs.com/liujiacai/p/7839971.html
https://blog.csdn.net/ll18810775652/article/details/78575066
6、split默认以空格为分隔符
name="xiao ma guo he"
print(name.split())
--------结果:
['xiao', 'ma', 'guo', 'he']
8、#字符串操作isdigit使用
mcw1="a"
mcw2=""
mcw3="8b"
n1=mcw1.isdigit()
n2=mcw2.isdigit()
n3=mcw3.isdigit()
print(n1,n2,n3)
---------------结果:
#False True False
#自我注解:只要是数字返回值就是True.由此判定字符是否为数字。
#让用户输入任意字符串,获取字符串之后病计算其中有多少个数字
text=input("请输入内容:")
index_len=len(text) #输入字符串的长度,
index= #字符串的下角标,下角标为[,index_len-]
count= #对数字个数进行计数
while True:
val=text[index]
if val.isdigit():
print(val)
count+=
if index==index_len -:
break
index+=
print("数字总共有%s个"%(count))
------------------结果:
请输入内容:mcwff9023ff
数字总共有4个
实现步骤思路:
1、用的是while对输入字符串进行循环打印(while循环字符串需要统计字符串长度,开
头和结尾数字)
2、判断字符是否为数字,打印出数字来
3、初始化一个计数变量,多一个数字就自增一对个数进行统计。
9、#字符串操作upper和lower
mcw1="MCcI"
mcw2="mKlsM"
print(mcw1.lower(),mcw2.upper())
-----------------结果:
mcci MKLSM mcw="mCwfeIhAo xIao"
mcwmodify=mcw[:].upper()+mcw[:len(mcw)].lower()
mm=mcw[:-].lower()+mcw[-:].upper()
print(mcwmodify)
print(mm)
----------------结果:
Mcwfeihao xiao
mcwfeihao xIAO
#自我注解: 对字符串大小写进行转换,也可以对字符串先切片再转换大小写,用+号拼接起来。
可指定字符转换大小写,当结合切片的时候
10、#字符串操作strip(),lstrip(),rstrip()
参考:https://www.cnblogs.com/huangbiquan/p/7923008.html
Python中有三个去除头尾字符、空白符的函数,它们依次为:
strip: 用来去除头尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
lstrip:用来去除开头字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
注意:这些函数都只会删除头和尾的字符,中间的不会删除。
用法分别为:
string.strip([chars])
string.lstrip([chars])
string.rstrip([chars])
参数chars是可选的,当chars为空,默认删除string头尾的空白符(包括\n、\r、\t、' ')
当chars不为空时,函数会被chars解成一个个的字符,然后将这些字符去掉。
它返回的是去除头尾字符(或空白符)的string副本,string本身不会发生改变。
举例说明如下:
1. 当chars为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')
m_str=" xiao ma "
print("---|"+m_str+"|---") #原字符串打印
print("---|"+m_str.strip()+"|----") #删除头尾空格
print("---|"+m_str.lstrip()+"|---") #删除开头空格
print("---|"+m_str.rstrip()+"|---") #删除结尾空格
显示结果:
---| xiao ma |---
---|xiao ma|----
---|xiao ma |---
---| xiao ma|---
2.当chars不为空时,函数会被chars解成一个个的字符,然后将这些字符去掉。
m_str="122xiao12ma2"
print(m_str) #原字符串打印
print(m_str.strip("12")) #删除头尾指定字符串
print(m_str.lstrip("12")) #删除开头指定字符串
print(m_str.rstrip("12")) #删除结尾指定字符串
结果:
122xiao12ma2
xiao12ma
xiao12ma2
122xiao12ma
3、字符串也可以变量代替
a = 'x'
b = 'xiaoma'
print(b.lstrip(a))
iaoma
4、
a="c:\acmacm"
b="c:\a\cmcw"
print(b.strip(a))
\cmcw #去除变量b中与变量a开头相同的部分。
5、#去制表符,换行符
v1="mcw\nxiaoma"
v2="mcw \t xiaoma"
print(v1)
print("------------------------")
print(v2)
print("---------------------------")
v3="mcw\n" #去制表符,换行符
v4="xiaoma\t"
print(v3.strip(),v4.strip())
6、默认同时去掉制表符,换行符,空格这些
ss=" \t mcw\n "
li=[]
li.append(ss)
li.append(ss.strip())
print(li)
------------------结果:
[' \t mcw\n ', 'mcw']
python基础知识-03-字符串的更多相关文章
- Python基础知识:字符串
1.Python中大写字母命名的变量,默认为常量,不可修改:列如:MYSQL_CONNECTION = '192.168.1.1' 2.字符串换行输入格式:换行用\隔开,两行分别用引号,制表符\t,换 ...
- Python基础知识之字符串操作方法总结
Python 中字符串也是一种数据类型,针对此数据总结下常用的方法 1,字符串截取,变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾 ...
- python基础知识(字符串)
定义字符串 ' '单引号 " "双引号 只能用于单行 '" '"三引号 可以用于多行 拼接字符串使用 +号链接 字符串只能链接字符串其他类型字符串需要用s ...
- python基础知识0-3
一.根据用户输入内容输出其权限 # 根据用户输入内容打印其权限 # FYT --> 超级管理员 # eric --> 普通管理员 # tony,rain --> 业务主管 # ...
- python基础知识(二)
python基础知识(二) 字符串格式化 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 print(' %s is boy'%('tom')) ----> ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python 基础知识(一)
python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
随机推荐
- html input file accept
*.3gpp audio/3gpp, video/3gpp 3GPP Audio/Video*.ac3 audio/ac3 AC3 Audio*.asf allpication/vnd.ms-asf ...
- swiper 仿淘宝详情页面 视频图片切换
1.好兄弟,看一下是否是你需要的 2.废话不多说 直接上代码,复制粘贴一下 自己引用一下swiper.js和css 然后就可以开始玩儿了 <!DOCTYPE html> <html& ...
- md5.digest()与md5.hexdigest()之间的区别及转换
举给例子 md5 = hashlib.md5('adsf') md5.digest() //返回: '\x05\xc1*(s48l\x94\x13\x1a\xb8\xaa\x00\xd0\x8a' # ...
- python小项目之微信远程控制
前两天接触了一个有趣的python模块--itchat,这个模块可以非常方便的操作微信,今天就来使用这个模块来实现微信远程控制. 环境准备 itchat模块不是python标准模块(内置模块),是一个 ...
- 数据结构与算法-图的最短路径Dijkstra
一 无向图单源最短路径,Dijkstra算法 计算源点a到图中其他节点的最短距离,是一种贪心算法.利用局部最优,求解全局最优解. 设立一个visited访问和dist距离数组,在初始化后每一次收集一 ...
- bat脚本,winscp,shell加mysql存储过程实现mysql单条数据迁移
起因 公司有个任务,需要迁移mysql中的单条数据.从公司的dev环境到staging环境,dev环境的mysql安装在windows server 2012 R2下,stage是aws的服务器不能直 ...
- CALL TRANSACTION
概要 SUBMITと違い.トランザクションコードで呼び出すのが特徴. アドオンからの伝票照会やバッチインプットによるSAPへのデータ登録/更新処理にも利用される. なお.呼び出された側から呼び出し元へ ...
- 《JAVA程序设计》20155214 实验一 Java开发环境的熟悉(Linux + IDEA)
<JAVA程序设计> 实验一 Java开发环境的熟悉(Linux + IDEA) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...
- 20155313 2016-2017-2 《Java程序设计》第二周学习总结
20155313 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 1.1 基本类型 整数:可细分为short整数(占2字节).int整数(占4字节)与long ...
- 20155330 2016-2017-2 《Java程序设计》第一周学习总结
教材学习内容总结 第一章 Java平台概论 学习目标 Java版本迁移简介 认识Java SE.Java EE.Java ME 了解JVM.JRE与JDK 下载与安装JDK 章节主要内容 第二章 从J ...