python 字符串的介绍与应用 12.16

来源:互联网 发布:unity3d海底场景 编辑:程序博客网 时间:2024/06/05 05:32

1 字符串的介绍

字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

在python中单引或者双引都可以定义字符串,三引号允许一个字符串跨多行,字符串是存储在内存中,可以使用中括号和下标来获取单个字符或截取字符串。

2 字符串的截取

如 str=“abcdefg”

1 print(str【1】)

(这样截取到的就是b,因为在字符串中是从零开始为第一个。所以输出的结果就是b)

2 Print(str【1:5】)

(截取到的是bcde,从1到 5-1,0是a所以取不到)

3 Print(str【:6】)

(截取到0到6-1的字符串,也就是abcdef,冒号前面空就表示从0开始截取)

4 Print(str【:】)

(截取所有的字符串也就是abcdefg)

5 Print(str【3;】)

(打印从3开始到最后一个字符,也就是defg)

6 Print(str【-2:】)

(截取从倒数第二个开始,到最后一个字符结束 也就是fg (f是倒数第二个 g是最后一个))

7 Print(str【3,2】)

(会报错,前面的数字不能大于后面的)

8 Print(str【1:4:2】)

(截取到从1到4-1的字符,后面的2是步长,也就是截取bd ,步长2就表示每隔1个再取)

逆序从后取到前怎么取?

1 Print(str【-1:0:-1】)

(截取的就是从最后一个到第0个加1也就是(gfedcb)后面的步长必须要加因为从后往前 所以步长是负数)

2 Print(str【-1::-1】)

(截取的就是从最后一个到第0个也就是(gefdcba))

3 字符串的一些用法

如 str=“abcdefg”

1  in和notin   

    If “abc” in  str:

     Print(“存在”

 (这句话的意思就是如果abc在str中就会输出存在)

     If  “abc”notin  str:

     Print(“不存在”)

 (如果abc不在str中就会输出不存在)


2  \t(代表制表位)

3  In:判断是否在这些字符串存在

   Not in :判断是否不在此字符串中

4 \在末尾时表示续航符

5 \b表示退格

6 \n表示换行

7 \r 表示回车


4 字符串格式化

1 %s格式化字符串

2 %d格式化整数

3 %u格式化无符号整型

4 %o 格式化无符号的八进制数

5 %x 格式化无符号的十六进制数

6 %X 格式化写

7 %f  格式化浮点数

具体用法例如:

print(“我叫%s今年%d岁!”%(“梁斌”,24))

输出结果就是:我叫梁斌今年24岁!


5 字符串函数

例如 mystr=“hallo abc”

1     len(mystr)字符串的长度

例如 print(len(mystr))

结果输出的就是mystr的长度为9

2     count():mystr.count(“l”)表示mystr中有多少个l

例如 Print(mystr.count(“l”))最后结果为2 就是mystr这个字符串中有两个l 

3      capitalize():mystr.capitalize()将字符串的第一个字符转换为大写

例如 print(mystr.capitalize())最后结果为Hello abc(首字母变成大写)

4      title():将每一个单词首字母大写

例如 print(mystr.title())结果变成 Hello Abc(每一个单词首字母大写)

5      find():mystr.find(“l”)找字符串,返回找到的字符串下标,如果没找到会返回-1

例如 print(mystr.find(“h”))结果就是0(因为h在第0个位置)如果两个h 就只会返回第一个h的下标

6     rfind()从右面开始找

7     index和rindex的意思和find和rfind意思是相同的 不同的是index如果没找到会返回异常find没找到返回-1

8    替换(replace)replace():mystr.replace(“ll”,“LL”)

例如 print(mystr.replace(“ll”,“LL”))结果就成为了heLLo abc。但是如果再输出print(mystr)结果还是hello abc 因为字符串不会被改变除非给他重新赋值

9     拆分(split)split():mystr.split(“”):

例如 print(mystr.split(“”))这样的结果就成了【“hello”“abc”】也就是拆分成了hello和abc两个字符串

10    startswith():以XX开头    endswith():以xx结尾

例如 如果mystr是以h开头就显示通过

示例  if mystr.startswith(“h”):

        Print(“通过”)

11     lower()转成小写

12     upper()转成大写

13     isalpha()判断字符串是否全是字母

14     isalunum()判断字符串是否是数字

15     isalnum()判断字符串是否是数字和字母

例如 score=input(“请用户输入成绩”)

     Ifscore.isalpha():这句话的意思就是如果用户输出的是字母的话

      Print(“输入有误”)就提示输入有误

16  replace(替换)把字符串中的原有字符替换成新字符

例如 my=1b2c4b5d 将其中的数字变成A

For I in range(0,10)

my=my.replace(my(i),“A”)

print(my)


6 预习 随机数

 1.随机数的调用

import random(python中如果要用到随机数 需要导用import random这个数据库才可以调用随机数)

1 取一个随机整数 例如:
a=random.random(0,100)
print(a)(就会输出一个0-99之间的整数)
2 随机选取一个0-100之间的偶数例如:
b=random.randrange(0,101,2)
3 随机一个浮点数例如:
c=random.random()(随机的数是0-1之间的浮点数)
4 随机一个指定范围的浮点数 例如:
d= random.uniform(1,10)
5  随机一个字符 例如:
e=random.choice("abcdfereerr%^*$")
6 从多个字符中选取特定数量的字符 例如:
f=random.sample(“abcdefghij”,3)
输出f就会从上面字符中随机选取三个字符
7  随机选取字符串:例如
g=random.choice(【“apple”,“pear”,“peach”,“orange”,“a”】)

8   洗牌  例如:
abc=【1,2,3,4,5,6】
random.shuffle(abc)
print(abc)结果就会把1,2,3,4,5,6打乱顺序


最后附上练习题

str1 = " w_e_r_tD84 "
str2 = " w_e_r_t84D 78d"
# 以下题目都要求打印最后的结果:
# 1.比较这两个字符串是否相同,如果相同,打印“true”,如果不相同,打印“false”
# 2.找出这两个字符串从第几个位置开始不相等的,打印不相等的部分
# 3.把str2小写字母都改成大写

# 4.去掉str2两边的空格。PS:要求至少用两种方法

# 5.str2中是否有数字,如果有都改成字母“A”

# 6.把str1中第3~7位置的字符串插入到str2中的第5个位置

# 7.反转str2,并打印反转后的内容和字符串的长度



第一题:
# 比较这两个字符串是否相同,如果相同打印true,如果不相同falseif str1==str2:    print("true")else:    print("false")
第二题暂时不会。。。。
第三题:
# 小写转大写print(str2.upper())
第四题:
#去除str1两边的空格temp=str1.lstrip().rstrip()print(temp)
第五题:
# str2中是否有数字,如果有改成字母Afor i in range(0,10):    str2=str2.replace(str(i),"A")print(str2)
第六题:
# 把str1中第3-7位置的字符插入到str2中的第五个位置a=str1[3:8]b=str2[0:5]c=str2[5:]print(b+a+c)
第七题:
#翻转str2,并打印反转后的内容和字符串长度print(str2[::-1],len(str2))







 












原创粉丝点击