Timo学习笔记 :Python基础教程(第三版)第三章 使用字符串

第三章 使用字符串

前情提要

Timo学习笔记 :Python基础教程(第三版)第二章 列表和元组



前言

前四章的笔记都是在word上简单复制来的,排版可能有点confused,第五章开始好好写!


一、字符串基本操作

前一章所有标准序列操作(索引、切片、乘法、成员资格检查、长度、最小值和最大值)都适用于字符串。但字符串是“不可变”的,所以所有的元素赋值和切片赋值都是非法的。

所以,基本操作参见上一章。

二、设置字符串的格式:精简版

常用两种方法:字符串方法format和模板字符串

字符串方法format

① 每个替换字段都用{}括起,{}中可包含名称、如何转换相应的值和格式设置。
② 替换字段可没有名称(此时严格按照顺序)或将索引用作名称。如’{}, {}’.format(‘timo’, ‘par’)’{2} {1} {0}’.format(‘我’, ‘爱’, ‘你’) (其结果为’你爱我’)
③ 转换说明符%:在%左边指定一个字符串,在右边指定要设置格式的值。如string = ‘Salut, c\’%s timo. Tu %s qui ?’ 中,%s为转换说明符,指出要将值插入在哪里;s代表将值视为字符串进行格式设置,如果指定的值不是字符串,将使用str将其转换为字符串。如format = (‘est’, ‘es’) >>>string % format

模板字符串:

from string import template
n =template(‘$replace1 $replace2’) n.substitute(repalce1=’str1’, replace2=’str2’)

三、设置字符串的格式:详细版

即通过调用字符串方法format,将每个值插入字符串中,以替换用花括号{ }括起的替换字段。替换字段,即要被处理的目标字段。

替换字段

替换字段 = 字段名 + 转换标志 + 格式说明符;
每个部分皆为optional

字段名:索引/标识符;指出要设置哪个值的格式并使用其结果来替换字段。
转换标志:叹号(!)后的单个字符;有r (repr),==s (str)a (ascii)==三种。如制定了转换标志,将用指定的函数将对象转换为字符串,再进一步设置格式。repr创建给定值的python表达,str创建字符串,ascii创建只含ASCII字符的表达。
格式说明符:==冒号(:)==后面的表达式;包括格式类型(字符串、浮点数或十六进制数),字段宽度或精度,对齐等详尽格式。

替换字段名

’{替换字段1}{替换字段n}’.format(参数)。如>>>’{2} {1} {0}’.format(‘我’,‘爱’,‘你’)

基本转换

在指定字段后天见!s、!r或!a。>>>’{2!s} {1!a} {0!r}’.format(‘我’,‘爱’,‘你’) 其结果为"你 ‘\u7231’ ‘我’"

宽度、精度和千位分隔符

By default设置浮点数(name:f)时显示小数点后6位,并根据需要设置字段宽度。
宽度:{字段名:n,.m}.format(字段名=x);:表示开始设置这三种格式,n指定宽度,逗号,添加千位分隔符,.m指定精度。

符号、对齐和用0填充

By default 数字右对齐,字符串左对齐,空格填充空白处。
:&^:指定&替代空格填充空白处,该符号位于: 和对齐说明符之间。

对齐说明符

左、右和居中对齐分别用符号< >和^。
用0填充:在指定要设置宽度和精度的数之前,可添加一个标志;可以是0、+、-或空格,其中0表示用0填充数字。

四、字符串方法

  1. center:通过在字符串两边填充符号让字符串居中。’str’.center(20, ‘&’) 。’&'如不指定特定符号,default为空格。
  2. find:在字符串中寻找子串,返回其第一个字符第一次出现时的索引,否则返回-1。’Timo est parfait !’.find(‘mo’, 0, 6),0和6指定检索起止点;注意6指定终点,但实际上检索范围是0-5,不包含6,这是python的惯用做法。
  3. join:用于合并字符串列表中的各个元素,不是列表间的拼接。'/'.join(['1', '2', '3']) 用字符/将列表[‘1’, ‘2’, ‘3’]中的三个元素合并成一个新的字符串’1/2/3’。
  4. split:与join相对,是将一个字符串拆分为字符串列表。>>> '1/2/3'.split('/')以/为分隔符,将字符串’1/2/3’分割为字符串列表[‘1’, ‘2’, ‘3’]。
  5. lower:’PARFAIT’.lower() 将字符串转换为小写’parfait’;类似的.upper()全部转为大写,而.title()将字符串转为词首大写。
  6. replace:替换并返回替换后的结果。>>> 'Timo is perfect!'.replace('is', 'est') 返回结果’Timo est perfect!’ 一次只能替换一个。
  7. strip:删除头尾的空白(不包括中间),并返回删除后的结果。.strip(‘&’) 则可指定删除头尾的&字符。
  8. translate:’string1’.translate(‘AB’, ‘ab’, ‘s’) 在字符串string1中,用a替代A,用b替代B,指定删除字母s。
  9. 判断字符串是否满足特定条件:isspace,isdigit和isupper判断字符串是否包含的字符全是空格、数字或大写。

Python的这种笔记模板蛮好用。


总结

这章学习的新函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Timo后台管理系统是一款广泛应用于企业内部的管理系统,据报道,近期发现了一些与安全性相关的漏洞。这些漏洞可能会使得系统面临一系列潜在威胁和风险。 首先,可能存在认证和授权方面的漏洞。如果恶意攻击者能够绕过身份验证和授权机制,他们可能会获取未经授权的权限并访问系统中的敏感信息。 其次,可能存在跨站脚本攻击(XSS)漏洞。这种漏洞可能允许攻击者在用户浏览器中注入恶意代码,从而导致被攻击用户的敏感信息泄露。 另外,可能存在跨站请求伪造(CSRF)漏洞。攻击者可以伪装成合法用户,并利用受害者的已登录状态发送伪装请求,执行恶意操作。 此外,还可能存在SQL注入漏洞,攻击者可以通过向数据库发送恶意脚本来获取敏感的数据库信息。 最后,系统可能存在未处理的错误输入漏洞。如果未对用户输入进行适当的过滤和验证,攻击者可以利用这些漏洞输入特定的恶意数据来破坏系统的功能或者获取非法访问权。 为了解决这些漏洞,开发者和管理员应当密切关注最新的安全警报和补丁,并及时进行修补和升级。同时,应加强对用户输入的过滤和验证,以防止恶意代码的注入。此外,建议加强系统的访问权限控制,确保只有授权用户才能访问系统中的敏感信息。最重要的是,定期对系统进行安全性审计和漏洞扫描,以及加强员工的安全意识教育和培训,以增强整个系统的安全性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值