字符串:字符串是以单引号或双引号括起来的任意文本

创建字符串:

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的更多相关文章

  1. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  2. 为什么阿里巴巴不建议在for循环中使用"+"进行字符串拼接

    字符串,是Java中最常用的一个数据类型了.关于字符串的知识,作者已经发表过几篇文章介绍过很多,如: Java 7 源码学习系列(一)--String 该如何创建字符串,使用" " ...

  3. 3.Python自我修炼(升仙中....整数,布尔值,字符串,for循环)

    python学习(整数,布尔值,字符串,for循环) 1.整数 ​ 在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使用long类型.但是在python3中不存 ...

  4. 不建议在for循环中使用”+”进行字符串拼接

    https://mp.weixin.qq.com/s/qG6bdhndAip9s-_XM9oP3A 为什么阿里巴巴不建议在for循环中使用”+”进行字符串拼接 互联网后端架构 1周前    

  5. Ajax请求php返回json对象数据中包含有数字索引和字符串索引,在for in循环中取出数据的顺序问题

    //php中的数组数据格式 Array ( [all] => Array ( [title] => ALL [room_promotion_id] => all ) [best_av ...

  6. Shell脚本之二 变量、字符串和数组

    一.Shell 变量 1.1 定义变量 定义变量时,变量名不加美元符号($),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的 ...

  7. ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)

    客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...

  8. C字符串和C++中string的区别 &&&&C++中int型与string型互相转换

    在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别:   C字符串 string对象(C++) 所需的头文件名称 ...

  9. C字符串和C++中string的区别 &amp;&amp;&amp;&amp;C++中int型与string型互相转换

    在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别:   C字符串 string对象(C++) 所需的头文件名称 ...

随机推荐

  1. jquery-easyui的datagrid在checkbox多选时,行选中不正确应,去除高亮的解决方法

    jquery-easyui的datagrid在checkbox多选时,行选中不正确应,去除高亮的解决方法 工作中用到一个具有多选功能的easyui-datagrid在处理cell的点击事件时,不同 ...

  2. 更改linux文件的拥有者及用户组(chown和chgrp)

    .使用chown命令更改文件拥有者 在 shell 中,能够使用chown命令来改变文件全部者.chown命令是change owner(改变拥有者)的缩写.须要要注意的是,用户必须是已经存在系统中的 ...

  3. 里根上台时国债只占GDP的30%

    学里根是刻舟求剑,关键是钱从哪来 5  里根主要靠借钱,这是冷战红利,美国打完二战国债占了GDP的120%,然后总量就没怎么增加,但战后GDP快速增长,结果国债占GDP的比例连续下降,打越战登月石油危 ...

  4. hdu_3308 区间合并

    一两个月没写代码的确是手生的厉害,debug的好艰辛,,不过看到accept时的那种满足感真的就是爽 #include<iostream> #include<cstdio> # ...

  5. WinRar 设置默认的压缩格式为zip

    By default, WinRar uses the RAR archive format for compressing files. You may prefer using the more ...

  6. es6 --- 功能

    标记的模板文字 1.模板文字!确实很棒.我们不再会这样做…. const concatenatedString = "I am the " + number + "per ...

  7. leetcode 新题型----SQL,shell,system design

    leetcode 主要是一个针对北美的coder人群找工作的代码练习网站,我在2015年初次接触这个网站的时候,总共只有200多道题目,是一个类似acm 的a题网站.这些年变化越来越大,主要是因为找工 ...

  8. checkbox和文字不再同一水平线上

    为了演示效果,我故意将文字变为12px,将复选框变大,看到的效果就是下面的那样 然后,我们通过给复选框添加vertical-align:middle:让文字和复选框达到同一水平线的效果

  9. Bayes++ Library入门学习之熟悉UKF相关类

    UKF-SLAM是一种比较流行SLAM方案.相比EKF-SLAM,UKF利用unscented transform代替了EKF的线性化趋近,因而具有更高的精度.Bayes++库中的unsFlt.hpp ...

  10. 十一 模板匹配match template

    一.介绍 1.模板匹配 通俗讲就是以图找图,通过图中的一部分来找它在图中的位置(模板匹配就是在整个图像区域发现与给定子图像匹配的小块区域). 模板匹配是一种最原始.最基本的模式识别方法,研究某一特定对 ...