python-2

这篇博客详细介绍了Python字符串的创建、特性、操作方法,包括索引、切片、重复、连接、成员操作符等,并提供了多个实例,如回文数判断、字符串搜索与替换、对齐、统计等,深入探讨了Python字符串的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、字符串创建

# \n代表换行, \t代表一个tab键

# end指定分隔符的, 默认情况下为\n;



# 转义字符;\", \',\n,\t;



二、字符串的特性

1. 索引

# 正向索引


# 反向索引;


2.切片

print(s[0:3])      # start:end ====从start索引开始到end-1个索引结束;
print(s[:3])        # 如果start没有, 则默认从0索引开始;
print(s[2:])        # 如果end没有, 则默认到最后结束;
print(s[0:4:2])   # 0,2; 从0开始, 到4-1结束, 步长为2;
print(s[::2])       # hlo
print(s[:])           # 全部字符
print(s[::-1])       # 反转字符串
print(s[-3:])        # 显示最后三个字符
print(s[-2:])         # 显示最后两个字符
print(s[-1:])


3.重复


4.连接


5.成员操作符


# for循环:

# 依次遍历字符串s的每一个元素,i='h', 'e', 'l', 'l', 'o'



练习:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样

的整数。

示例 1:
        输入: 121
        输出: true
示例 2:
        输入: -121
        输出: false
        解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:
        输入: 10
        输出: false
        解释: 从右向左读, 为 01 。因此它不是一个回文数。




三   字符串常用方法

1.判断字符串

print(s.islower())           判断是否是小写字母

print(s.isupper())           判断是否是大写字母

print(s.isalnum())            判断是否都是字母或数字

print(s.isalpha())            判断是否都是字母

print(s.isdigit())               判断是否都是数字

print(s.isspace())            判断是否都是英文空格

print(s.istitle())                判断是否都是标题(第一个字母大写, 其他字母小写;)

2.修改字符串

print(s1.lower())              s1字符串修改为小写

print(s1.upper()               s1字符串修改为大写

print("hello".title())            hello 修改为标题


3.判断变量名合法性

# 变量名可以由字母,数字或者下划线;

# 变量名只能以字母或者下划线开头;s[0]
# 变量名不能是python的关键字: eg: if, elif, else,

#   eg: while, for, break,continue,pass

当用户输入一个变量名, 判断该变量名是否合法?

1. 判断变量名的第一个字符是否合法?  --- 是否是字母或者下划线

2. 除了第一个字符之外的其他字符; var[1:]






while_for与else的组合

(如果不满足while后面的表达式,则执行else语句;)



4.字符串的搜索与替换

# find找到子串,并返回最小的索引值;

print(s.find('python'))   从左向右查找


# find找到子串,并返回最大的索引值;

print(s.rfind('python'))  从右向左查找

print(len(s))    子串总长度


# 替换字符串中所有的“hello”为"westos"


5.字符串的处理_删除不必要的字符串

 #strip: 删除字符串左边和右边的空格. (空格是广义的: \n,\t,)


# lstrip: 删除字符串左边的空格.


# rstrip: 删除字符串右边的空格.


# 删除中间的空格, 通过replace间接实现删除中间的空格;


# 删除字符串中所有的‘a’字符


用户登陆(输入用户名和密码是误输入空格无影响)


6.字符串对齐

s.center(width[,fillchar])

返回一个长为width的新字符串,在新字符串中原字符居中,其他部分用fillchar指定的符号填充,
未指定时通过空格填充。

s.ljust(30,'*'))    左边添加30个*

s.rjust(30,'*'))    右边添加30个*


7.字符串统计

统计某个字符或某段字符的个数


给定一个字符串来代表一个学生的出勤纪录,这个纪录仅包含以下三个字符:
'A' : Absent,缺勤
'L' : Late,迟到
'P' : Present,到场
如果一个学生的出勤纪录中不超过一个'A'(缺勤)并且不超过两个连续的'L'(迟到),
那么这个学生会被奖赏。

你需要根据这个学生的出勤纪录判断他是否会被奖赏。

输入: "PPALLP"
输出: True
示例 2:

输入: "PPALLL"

输出: False



8.字符串以什么开头和以什么结尾

print(url1.startswith(('http://', 'file://', 'https://')))     以'http://'或 'file://'或 'https://开头


print(filename.endswith('.sh'))     以'.sh' 结尾


想找出/var/log/目录中所有以.log结尾的文件名;


9.字符串的连接与分离

连接join


分离split

检测ip是否合法?




计算info的结果;

把加号变成乘号

 计算new_info的结果;

对于分离的值进行反转


10.内置方法

max 字符ASCII码值较大的

min 字符ASCII码值较小的


python3中, not支持数值类型比较大小;


枚举:



zip, 第一个字符串和第二个字符串的值一一对应;


求最大公约数和最小公倍数


统计字符串个数

题目描述:输入一行字符串, 分别统计出包含英文字母,空格,数字和其他字符的个数;



2. for循环嵌套:打印9*9乘法表;

for m in range(1,10):
    for n in range(1,10):
        s = n * m
        if (m > n):
            print("%s*%s=%s" %(n,m,s),end='\t')
        elif m==n:
            print("%s*%s=%s" %(n,m,s),end='\n')
        else:
            break


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值