Python字符串

文章目录

  • 一、字符串的创建和赋值
  • 二、基本特性
    • 1.连接操作符和重复操作符
    • 2.成员操作符
    • 3.正向索引和反向索引
    • 4.切片
    • 5.for循环访问
  • 三、字符串内建方法
    • 1.字符串类型的判断与转换
    • 2.字符串的数据清洗
    • 3.字符串的位置调整
    • 4.字符串的搜索和统计
    • 5.字符串的分离和拼接
  • 四、拓展及示例(string模块)
    • 1.随机生成100个验证码(两个数字四个字母随机组合)
    • 2.小学生计算能力测试系统
    • 3.判断输入字符串是否为回文字符(字符反过来和正序完全相同)

一、字符串的创建和赋值

字符串或串(String)是由数字、字母、下划线组成的一串字符。Python 里面最常见的类型。 可以简单地通过在引号间(单引号,双引号和三引号)包含字符的方式创建它。
常用的转义符号:
Python字符串_第1张图片

二、基本特性

1.连接操作符和重复操作符

example:
name = 'westos'
print('hello ' + name)
# 1+ 1= 1+ 0.01= 1.01print('hello' + str(1))
print("*" * 30 + '学生管理系统' + '*' * 30)

在这里插入图片描述

2.成员操作符

example:
data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

在这里插入图片描述

3.正向索引和反向索引

example:
s = 'WESTOS'
print(s[0])  # 'W'
print(s[3]) # 'T'
print(s[-3]) # 'T'

在这里插入图片描述

4.切片

example:
s = 'hello westos'
print(s[1:3]) # 'el'
print(s[:3]) # 'hel'
print(s[:5])  # 拿出字符串的前5个字符
print(s[1:])  # 'ello westos'
print(s[2:])  # 'llo westos'
print(s[:])   # 拷贝字符串
print(s[::-1]) # 倒序输出

Python字符串_第2张图片

5.for循环访问

example:
s = 'westos'
count = 0
for item in s:
    count += 1
    print(f"第{count}个字符:{item}")

Python字符串_第3张图片

三、字符串内建方法

1.字符串类型的判断与转换

1. 类型判断
s = 'HelloWESTOS'
print(s.isalnum())  %判断是否是字母或数字
print(s.isdigit())  %判断是否是数字
print(s.isupper())  %判断是否为大写

2. 类型的转换
print('hello'.upper()) %均转换为大写
print('HellO'.lower()) %均转换为小写
print('HellO WOrld'.title()) %首字母大写
print('HellO WOrld'.capitalize())  %capitalize()将字符串的第一个字母变成大写,其他字母变小写
print('HellO WOrld'.swapcase())  %swapcase() 方法用于对字符串的大小写字母进行转换

Python字符串_第4张图片

2.字符串的数据清洗

lstrip: 删除字符串左边的空格(指广义的空格: \n, \t, ' ')
rstrip: 删除字符串右边的空格(指广义的空格: \n, \t, ' ')
strip: 删除字符串左边和右边的空格(指广义的空格: \n, \t, ' ')
replace: 替换函数, 删除中间的空格, 将空格替换为空。replace(" ", )

a = " hello ".strip()
print(a)
b = " hello ".lstrip()
print(b)
c = " hello ".rstrip()
print(c)
d = " hel        lo ".replace(" ", "")
print(d)

Python字符串_第5张图片

3.字符串的位置调整

print("学生管理系统".center(50))
print("学生管理系统".center(50, "*"))
print("学生管理系统".center(50, "-"))
print("学生管理系统".ljust(50, "-"))
print("学生管理系统".rjust(50, "-"))

Python字符串_第6张图片

4.字符串的搜索和统计

s = "hello westos"
print(s.find("llo"))
print(s.index("llo"))
print(s.find("xxx"))
print(s.count("xxx"))
print(s.count("l"))
print(s.count("o"))
#print(s.index("xxx"))  %index如果找到子串,则返回子串开始的索引位置。否则报错(抛出异常).

Python字符串_第7张图片

5.字符串的分离和拼接

ip = "172.25.254.100"
print(ip.split('.'))
items = ip.split('.')
print(items)
print("-".join(items))

Python字符串_第8张图片

四、拓展及示例(string模块)

1.随机生成100个验证码(两个数字四个字母随机组合)

import random
import string
print(random.choice("0123456789"))
print(random.choice("0123456789") + random.choice('0123456789'))
print(string.ascii_letters)
print(random.sample(string.ascii_letters, 4))
print("".join(random.sample(string.ascii_letters, 4)))
print( "".join(random.sample(string.digits, 2)) + "".join(random.sample(string.ascii_letters, 4)))
for i in range(100):       %循环输出100个由两个数字和四个字母随机组合的验证码
    print("".join(random.sample(string.digits, 2)) + "".join(random.sample(string.ascii_letters, 4)))

Python字符串_第9张图片

2.小学生计算能力测试系统

import random

count = 10
right_count = 0
for i in range(count):
    num1 = random.randint(1, 10)
    num2 = random.randint(1, 10)
    symbol = random.choice(["+", "-", "*"])
    result = eval(f"{num1}{symbol}{num2}")
    question = f"{num1} {symbol} {num2} = ?"
    print(question)
    user_answer = int(input("Answer:"))
    if user_answer == result:
        print("Right")
        right_count += 1
    else:
        print("Error")
print("Right percent: %.2f%%" %(right_count/count*100))

Python字符串_第10张图片

3.判断输入字符串是否为回文字符(字符反过来和正序完全相同)

s = input('输入字符串:')
result = "回文字符串" if s == s[::-1] else "不是回文字符串"
print(s + "是" + result)

或者:
s = input("请输入字符串:")
if s[:] == s[::-1]:
    print(f"{s}是回文字符")
else:
    print(f"{s}不是回文字符")

Python字符串_第11张图片
Python字符串_第12张图片

你可能感兴趣的:(Python字符串)