二:2.1 字符串与循环中的 while
字符串:字符串是以单引号或双引号括起来的任意文本
创建字符串:
str1 = "sunck is a good man!"
str3 = "sunckis a nice man!"
字符串运算
字符串连接:
str6 = "sunck is a "
str7 = "good man "
str8 = str6 + str7
print("str8=",str8)
输出重复字符串
str9 = "good"
str10 = str9 * 3
print("str10=",str10)
访问字符串中的某个字符
通过索引下标查找字符,索引从0开始
str11 = "sunck is a good man !"
print(str11[1])
str11[1] = "a"
print("str11=",str11)---------->错误 字符串不可变
截取字符串中的一部分
str12 = "sunck is a good man !"
str13 = str13[6:15] 第6个字符开始截取到15 (从0开始截取,0可省略,结尾也可省略即:[:5] [15:])
print("str13=",str13)-------> is a good
判断字符串是否在字符串中
str16 = "sunck is good man!"
print("good" in str16)------------->true
格式化输出
print("sunck is a good man")
num = 10
print("num =",num)
print("num =%d" % (num)) %d 占位符
转义字符 \
将一些字符转换成有特殊含义的字符
\n 换行
\\n 输出为 \n
print('tom is a 'good' man')---------->语法错误
print('tom is a \'good\' man')--------->tom is a 'good' man
如果字符串内有很多换行,用\n写在一行不好阅读
print('''
good
nice
handsome
''')-----------------表示多行即换行
\t 制表符
print("sunck\tgood")--------->sunck good(中间默认4个字符)
如果字符串中有好多字符串需要转移,就需要加入好多\,为了简化,Python允许用 r 表示内部的字符串默认不转义
print("\\\t\\")--------->\ \
print(r"\\\t\\")--------->\\\t\\
eval(str)
功能:将字符串str当成有效的表达式来求值并返回计算结果
num1 = eval("123")
print("num1=",num1)------->123
print(type(num1))-------> <class'int'> (查看类型)
print(eval("+123"))------------>123
print(eval("-123"))------------>-123
print(eval("12+3"))------------>15
print(eval("12-3"))------------>9
print(eval("a123"))------------>报错
print(eval("12a3"))------------>报错
len(str) 返回字符串长度(字符个数)
print(len("sunck"))----------->5
lower()转换字符串中大写字母为小写字母
str = "suncK IS"
print(str.lower())--------->sunck is
upper()转换字符串中小写字母为大写字母
str = "suncK IS"
print(str.upper)--------->SUNCK IS
swapcase()转换字符串中小写为大写 大写为小写字母
capitaliza()首字母大写,其他小写
title()每个单词首字母大写
center(width[,fillchar])返回一个指定宽度的居中字符串,fillchar为填充的字符串,默认空格填充
str = "sunck is a good man"
print(str.center(40,"*"))----------------->**********sunck is a good man***********
ljust(width[,fillchar]) 返回一个指定的宽度的左对齐字符串,fillchar为填充字符,默认空格填充
str = "sunck is a good man"
print(str.ljust(40,"*"))------------->sunck is a good man*********************
rjust(width[,fillchar]) 返回一个指定的宽度的右对齐字符串,fillchar为填充字符,默认空格填充
str = "sunck is a good man"
print(str.rjust(40,"*"))--------------->*********************sunck is a good man
zfill(width)返回一个长度为width的字符串,原字符串右对齐,前面补0
str = "sunck is a good man"
print(str.zfill(40))--------------->000000000000000000000sunck is a good man
count(str[,strat][,end]) 返回字符串中str出现的次数,可以指定范围,默认从头到尾
str = “sunck is a good good man”
print(str.count("good"))------->2
find(str[,strat][,end])从左向右检测str字符串是否包含在字符串中,可以指定范围,默认从头到尾。得到的是第一次出现的开始下标,没有则返回 -1
str = "sunck is a good man"
print(str.find("good"))------------>11
print(str.find("good",0,16))------->11
rfind(str[,strat][,end]) 从右向左检测
index(str,strat=0,end=len(str)) 从左向右检测 和find()相同 只是查找不到后会报错
rindex(str,strat=0,end=len(str)) 从右向左
lstrip()截掉字符串左侧指定的字符。默认为空格
str = " sunck is a good man"
print(str.lstrip())----------->sunck is a good man
str = "***********sunck is a good man"
print(str.lstrip("*"))----------->sunck is a good man
rstrip()截取字符串右侧指定的字符,默认为空格
strip()截取字符串两侧指定的字符,默认为空格
while 语句:
格式:
while 表达式:
语句
逻辑:当程序执行到while语句时,首先计算"表达式"的值,如果“表达式”的值为假,结束整个while语句。
如真,则执行”语句“,执行完语句再去计算表达式的值,如果表达式的值为假,结束整个while语句。如果“表达式"的值为真,则执行"语句”执行完语句再去计算表达式的值,如此循环往复,知道表达式的值为假才停止。
num = 1
while num <=5:
print(num)
num+=1
输出为1 2 3 4 5
计算1+2+3+4+5+.......+100
sum = 0
num = 1
while num<=100:
sum +=num
num += 1
print("sum = %d“ %(sum))
输出为sum=5050
str = "sunck is a good man”
index = 0
whlie index < len(str):
print("str[%d] = %s" % (index, str[index]))
index += 1
输出为:str[0] = s str[1] = u.......................
二:2.1 字符串与循环中的 while的更多相关文章
- python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字
python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...
- 为什么阿里巴巴不建议在for循环中使用"+"进行字符串拼接
字符串,是Java中最常用的一个数据类型了.关于字符串的知识,作者已经发表过几篇文章介绍过很多,如: Java 7 源码学习系列(一)--String 该如何创建字符串,使用" " ...
- 3.Python自我修炼(升仙中....整数,布尔值,字符串,for循环)
python学习(整数,布尔值,字符串,for循环) 1.整数 在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使用long类型.但是在python3中不存 ...
- 不建议在for循环中使用”+”进行字符串拼接
https://mp.weixin.qq.com/s/qG6bdhndAip9s-_XM9oP3A 为什么阿里巴巴不建议在for循环中使用”+”进行字符串拼接 互联网后端架构 1周前
- Ajax请求php返回json对象数据中包含有数字索引和字符串索引,在for in循环中取出数据的顺序问题
//php中的数组数据格式 Array ( [all] => Array ( [title] => ALL [room_promotion_id] => all ) [best_av ...
- Shell脚本之二 变量、字符串和数组
一.Shell 变量 1.1 定义变量 定义变量时,变量名不加美元符号($),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的 ...
- ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)
客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...
- C字符串和C++中string的区别 &&&&C++中int型与string型互相转换
在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别: C字符串 string对象(C++) 所需的头文件名称 ...
- C字符串和C++中string的区别 &&&&C++中int型与string型互相转换
在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别: C字符串 string对象(C++) 所需的头文件名称 ...
随机推荐
- mysql-总结select各子句及其顺序
顺序:from->where ->group by->having ->order by
- 【SSH 基础】浅谈Hibernate关系映射(3)
继上篇博客 一对多关联映射(单向) 上面我们介绍了多对一,我们反过来看一对多不就是多对一吗?那还用再进行不同的映射吗?有什么区别吗?一对多和多对一映射原理是一致的,存储是同样的.也就是生成的数据库的表 ...
- 【Android UI】案例02 圆角边框、圆角背景的实现(shape)
本文主要分享圆角边框与圆角背景的实现方式.该方式的实现,须要了解shape的使用.该部分的具体介绍,请阅读博客http://blog.csdn.net/mahoking/article/details ...
- 将一个文件夹纳入library或者移除remove
https://support.microsoft.com/en-us/help/4026298/windows-show-libraries-in-file-explorer To show lib ...
- 再谈Ubuntu和CentOS安装好之后的联网问题(桥接和NAT、静态和动态ip)(博主推荐)
不多说,直接上干货! 首先,普及概念. hostonly.桥接和NAT的联网方式 对于CentOS系统,用的最多的就是,NAT和桥接模式 CentOS 6.5静态IP的设置(NAT和桥接联网方式都适用 ...
- zookeeper图形界面工具zooinspector
链接: https://pan.baidu.com/s/1rabrwuC 密码: trwa zooinspector下载地址 解压后进入
- 项目中log4j的使用
基于ssm项目: 1.导入log4j.slf4j相关jar包 commons-logging-1.1.3.jar.log4j-1.2.12.jar.slf4j-api-1.6.6.jar.slf4j- ...
- 使用Java操作Redis(二)
上篇文章中我们可以看到,通过自己动手编码来操作Redis是相当繁琐的,实际上我们在重复制造轮子.Redis网站上列举出了一些方便操作Redis的常用工具. 可供Java选择的比较多,这里介绍一下Jed ...
- caffe(1) 网络结构层参数详解
prototxt文件是caffe的配置文件,用于保存CNN的网络结构和配置信息.prototxt文件有三种,分别是deploy.prototxt,train_val.prototxt和solver.p ...
- js利用点击事件做一个简单的计算器
先放一个样式图: 源代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...