当前位置: 首页 > news >正文

做底单的网站wordpress oauth

做底单的网站,wordpress oauth,邯郸老区建设网站,一个简单校园网的设计Python3 字符串知识点详解 一、字符串基础 1. 创建方式 单引号/双引号:等效使用,可互相嵌套特殊符号s1 允许嵌入"双引号" s2 "包含单引号的文本"三引号:支持多行字符串,保留换行和缩进格式s3 第一行 第…

Python3 字符串知识点详解

一、字符串基础

1. 创建方式

  • 单引号/双引号:等效使用,可互相嵌套特殊符号
    s1 = '允许嵌入"双引号"'
    s2 = "包含'单引号'的文本"
    
  • 三引号:支持多行字符串,保留换行和缩进格式
    s3 = '''第一行
    第二行'''
    
  • 续行符\: 将代码拆分为多行,输出为单行:
    long_str = "This is a very very very \
    long string"  # 输出为单行
    

2. 索引与切片

  • 索引规则:正向从0开始,负向从-1开始(反向计数)
    text = "Python"
    print(text[0])    # 'P' 
    print(text[-3])   # 'h' 
    
  • 切片语法[start:end:step]
    print(text[1:4])   # 'yth'(索引1-3)
    print(text[::2])    # 'Pto'(步长2)
    

3. 不可变性

  • 修改需创建新对象,原字符串不变
    s = "Hello"
    new_s = s[:4] + "p"  # 'Help'
    

二、字符串操作

1. 拼接与重复

  • 运算符+(拼接)、*(重复)
    print("Hi" * 3)  # 'HiHiHi' 
    print("A" + "B") # 'AB' 
    

2. 常用方法

方法功能说明示例
split(sep)按分隔符拆分字符串"a,b,c".split(",")['a','b','c']
join(list)合并列表为字符串"-".join(['a','b'])'a-b'
replace(old,new)替换子串"Hi".replace("i","ello")'Hello'
strip()去除首尾空白符" text ".strip()'text'
upper()/lower()全大写/全小写转换"AbC".lower()'abc'

3. 格式化方法

  • f-string(推荐):直接嵌入变量或表达式
    name = "Alice"
    print(f"Hello, {name.upper()}!")  # 'Hello, ALICE!'
    
  • 传统占位符%str.format()
    print("PI: %.2f" % 3.1415)       # 'PI: 3.14' 
    
  • 字符串格式化汇总
    在这里插入图片描述

三、高级特性

1. 编码转换

  • str ↔ bytes:使用 encode()decode()
    bytes_data = "中文".encode("utf-8")  # b'\xe4\xb8\xad\xe6\x96\x87' 
    text = bytes_data.decode("utf-8", errors="ignore")
    

2. 特殊方法

  • partition(sep):分割为三元组
    print("key:value".partition(":"))  # ('key', ':', 'value') 
    
  • translate():批量字符替换
    table = str.maketrans("aeiou", "12345")
    print("apple".translate(table))    # '1ppl2' 
    

3. 正则表达式

  • 结合 re 模块实现复杂文本匹配
    import re
    print(re.findall(r'\d+', "ID:123"))  # ['123']
    

四、字符串转义

1.核心转义字符表

Python使用反斜杠\作为转义标识符,常见转义字符及功能如下:

转义字符功能描述示例代码与输出引用来源
\\输出单个反斜杠print("C:\\Users")C:\Users
\' / \"在单/双引号字符串中输出对应引号print('I\'m OK')I'm OK
\n换行符(光标移动到下一行行首)print("A\nB") → 分两行输出
\t水平制表符(相当于4个空格)print("Hi\tPy")Hi Py
\r回车符(覆盖行首内容)print("123\rAB")AB3
\b退格符(删除前一个字符)print("hel\blo")hllo
\xhh十六进制字符编码(如\x41为’A’)print("\x41")A
\ooo八进制字符编码(如\101为’A’)print("\101")A
\uXXXXUnicode字符(如\u03A9为希腊字母Ω)print("\u03A9")Ω
\a响铃符(触发系统提示音)print("\a") → 响铃

注意:Windows系统换行符为\r\n,Linux/Mac为\n


2.原始字符串(Raw String)

在字符串前加rR前缀可禁用转义解析,常用于正则表达式和文件路径处理:

# 正则表达式场景
import re
pattern = r"\d+\t\w+"  # 保留原始反斜杠
match = re.search(pattern, "123\tAbc")# 文件路径场景
path = r"C:\Users\data\new_folder"  # 避免多次转义

注意:原始字符串末尾不能为单反斜杠(需拼接处理):

path = r"C:\folder" + "\\"  # 正确写法

3.安全处理与实战技巧

  1. 用户输入清洗
    使用.replace()防止特殊字符注入:
user_input = input("输入内容:").replace("\\", "\\\\")  # 转义反斜杠
  1. 参数化查询
    避免SQL注入攻击:
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
user_input = "1; DROP TABLE users"
# 安全做法(使用占位符)
cursor.execute("SELECT * FROM users WHERE id=?", (user_input,))
  1. 格式化字符串转义
    在f-string中需双重转义:
name = "Alice"
print(f"路径: {name}\\data")  # 输出: Alice\data

五、实用技巧

1. 多行处理

  • textwrap.dedent():消除缩进
    from textwrap import dedent
    s = dedent('''保留自然缩进的多行文本''')
    

2. 性能优化

  • 避免 + 频繁拼接,优先使用 join()
    # 低效:生成多个临时对象
    result = ""
    for s in list_data:result += s# 高效:单次内存分配
    result = "".join(list_data)
    

http://www.dtcms.com/a/601609.html

相关文章:

  • mkcert 自签证书以及 jssip
  • 新出土的古陶瓷碎片的图片并根据碎口尝试进行拼接用什么模型算法比较合适?古陶瓷碎片拼接算法选型
  • 网站建设人员需求化妆品网站的建设方案
  • Flink原理与实战(java版)#第2章 Flink的入门(第一节大数据架构的演变)
  • Python好玩的算法库
  • 银河麒麟V10下使用virt-manager安装Windows虚拟机
  • 插值——牛顿插值
  • 【稳定性】system_app_anr@1760693457221.txt和anr_2025-10-17-17-30-35-009有什么区别
  • 网站建设 教材 推荐免费网站提供
  • Java ee初阶——定时器
  • 【JavaEE初阶】网络层-IP协议
  • tomcat/idea打包部署报错,RUN 可以 DEBUG 不行
  • 地方网站还有得做吗永嘉做网站
  • 防滑齿位置与牙根断裂风险的相关性分析
  • Lua学习记录(1) --- Lua中的条件分支语句和循环语句
  • 铸铁实验平台概述
  • 微电网的“智能大脑”:ACCU-100M如何实现光储充一体化协调控制?
  • 算法 day 52
  • seo优化排名易下拉试验2022年seo还值得做吗
  • (Mysql)MySQL 查询执行顺序总结
  • Plaxis自动化建模与Python应用全解:从环境搭建到高级案例实战
  • 网络推广网站排名免费的行情软件网站不用下载
  • 建设网站困难的解决办法推荐营销型网站建设
  • 护航青春心 ——VR青少年心理健康体验系统的温柔守护
  • 20251112给荣品RD-RK3588开发板跑Rockchip的原厂Android13系统时适配gmac0
  • 网站支付页面怎么做的咸宁手机网站建设
  • 石油钻井、HDD、采矿:不同工况下,如何抉择您的陀螺定向短节?
  • MySQL: 体系结构与插件式存储引擎架构详解
  • 滨海做网站哪家好手机如何制作网站源码
  • k8s上seatunnel 可视化部署