python字符串

学习目标

1.掌握 字符串的定义格式

2.掌握 字符串格式化

3.熟悉 字符串的常见操作

4.1 字符串介绍

字符串是一种用来表示文本的数据类型,它是由符号或者数值组成的一个连续序列

Python支持使用单引号、双引号和三引号定义字符串

i='hello'

i="helle'

i='"hello"'

        #其中单引号和双引号通常用于定义单行字符串

        #三引号通常用于定义多行字符串。

转义字符:反斜杠“\”

print('let\'s learn Python')   #普通字符

let's learn Python

转义字符:

 

4.2.1 使用%格式化字符串

不同的占位符为不同类型的变量预留位置,常见的占位符如下所示。

 4.2.2 使用format()方法格式化字符串

格式化方法

1.虽然使用%可以对字符串进行格式化,

2.Python为字符串提供了一个格式化方法format()

        #第二种一般常用一些

        基本语法是通过 {} 和 : 来代替以前的 %

        format 函数可以接受不限个参数,位置可以不按顺序

例子:

import java.util.*;

public class FormatOfFormatter {
    public static void main(String[] args) {
        //实例化一个StringBuffer和Formmatter对象
        StringBuffer sb = new StringBuffer();
        Formatter formatt = new Formatter(sb, Locale.UK);

        //通过使用format(locale,format,Object ...)方法是
        //用给定的语言环境格式化字符串
        formatt.format(Locale.UK, "Hi %s !", "NHOOO");

        //显示格式化的字符串
        System.out.println(formatt);

        //通过使用format(format,Object ...)方法是
        //使用默认语言环境格式化字符串
        formatt.format("Hi %s !", "NHOOO");

        //显示格式化的字符串
        System.out.println(formatt);
    }
}

结果:

Hi NHOOO !
Hi NHOOO !Hi NHOOO !

4.2.3 使用f-string格式化字符串

f-string提供了一种更为简洁的格式化字符串的方式,它在形式上以f或F引领字符串,在字符串中使用“{变量名}”标明被替换的真实数据和其所在位置。

f('{变量名}') 或F('{变量名}')

4.3.1 进制转换

十进制是实际应用中最常使用的计数方式,除此之外,还可以采用二进制、八进制或十六进制计数。

#一般计算机只能识别计算机语言,就是二进制

4.4.1 字符串的查找与替换

Python中提供了实现字符串查找操作的find()方法,该方法可查找字符串中是否包含子串,若包含则返回子串首次出现的位置,否则返回-1

格式

str.find(sub[, start[, end]]

sub:指定要查找的子串。

start:开始索引,默认为0。

end:结束索引,默认为字符串的长度。

例子

word = 't'

string = 'Python'

result = string.find(word)

print(result)

结果:

2

4.4.1 字符串的查找与替换

Python中提供了实现字符串替换操作的replace()方法,该方法可将当前字符串中的指定子串替换成新的子串,并返回替换后的新字符串

格式:

str.replace(old, new[, count])

old:被替换的旧子串。

new:替换旧子串的新子串。

count:表示替换旧字符串的次数,默认全部替换

例子:

string = 'He said, "you have to go forward, ' \ '

Then turn left, Then go forward, and Then turn right."' # 指定替换两次

new_string = string.replace("Then", "then",2)

print(new_string)

结果:

He said, "you have to go forward, then turn left,  then go forward, and Then turn right."

4.4.2 字符串的分隔与拼接

split()方法可以按照指定分隔符对字符串进行分割,该方法会返回由分割后的子串组成的列表

格式

str.split(sep=None, maxsplit=-1)

sep:分隔符,默认为空字符。

maxsplit:分割次数,默认值为-1,                  

表示不限制分割次数

例子:

string= "Hello, my name is Wang Hong" # 以空格作为分割符,并分割2次

print(string.split(' ', 2))

结果:

['Hello,', 'my', 'name is Wang Hong']

4.4.2 字符串的分隔与拼接

join()方法使用指定的字符连接字符串并生成一个新的字符串。join()方法的语法格式如下。

格式

str.join(iterable)

iterable:表示连接字符串的字符

例子:

symbol = '*' world = 'Python' print(symbol.join(world))

结果:

P*y*t*h*o

#Python还可以使用运算符“+”拼接字符串。

例:"py"+"thon"="python"

4.4.3 删除字符串的指定字符

字符串中可能会包含一些无用的字符(如空格),在处理字符串之前往往需要先删除这些无用的字符。Python中的strip()、lstrip()和rstrip()方法可以删除字符串中的指定字符

 strip()例子:

str = "00000003210Runoob01230000000";

print str.strip( '0' ); # 去除首尾字符 0

str2 = " Runoob "; # 去除首尾空格

print str2.strip();

结果:

3210Runoob0123
Runoob

lstip()例子:

str = "     this is string example....wow    ";
print str.lstrip();
str = "88888888this is string example....wow!!!8888888";
print str.lstrip('8');

结果:

this is string example....wow!!!
this is string example....wow!!!8888888

rstrip()方法例子:

random_string = 'this is good    '

# 'si oo' 不是尾随字符,因此不会删除任何内容
print(random_string.rstrip('si oo'))

# 在 'sid oo' 中 'd oo' 是尾随字符,'ood' 从字符串中删除
print(random_string.rstrip('sid oo')) 
website = 'www.runoob.com/' 
print(website.rstrip('m/.'))
txt = "banana,,,,,ssqqqww....."
x = txt.rstrip(",.qsw")
print(x)
# 删除尾随字符 *
str = "*****this is string example....wow!!!*****"
print (str.rstrip('*'))
print(x)

结果:

str = "123abcrunoob321" print (str.strip( '12' ))

4.4.4 删除字符串的指定字符

 upper()方法例子:

str = "this is string example....wow!!!";

print "str.upper() : ", str.upper()

结果:

str.upper() :  THIS IS STRING EXAMPLE....WOW!!!

4.4.5 字符串对齐

在使用Word处理文档时可能需要对文档的格式进行调整,如标题居中显示、左对齐、右对齐等。Python提供了center()、ljust()、rjust()这3个方法来设置字符串的对齐方式。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值