Python全栈工程师(字符串/序列)

简介: ParisGabriel  Python 入门基础   字符串:str用来记录文本信息字符串的表示方式:在非注释中凡是用引号括起来的部分都是字符串‘’ 单引号“” 双引号''' ''' 三单引""" """ 三双引有内容代表非空字符串否则是空字符串区别:单引号内的双引号不算结束符双...

ParisGabriel

 
 
Python 入门基础
 
 
 

字符串:str
用来记录文本信息
字符串的表示方式:
在非注释中凡是用引号括起来的部分都是字符串
‘’ 单引号
“” 双引号
''' ''' 三单引
""" """ 三双引
有内容代表非空字符串否则是空字符串

区别:
单引号内的双引号不算结束符
双引号内的单引号不算结束符
三引号内的换行会自动转换为换行符
三引号内可以包含单引号和双引号

隐式字符串拼接:

s = "I'm a I'm a programmer" 'heoll "wored"'

转移符:
\' 单引号
\" 双引号
\\ 单反斜杠
\n 换行
\r 返回光标至行首
\t 水平制表符
\v 垂直制表符
\f 换页
\b 倒退
\0 空字符,字符值为0
\xXX ,XX为两位16进制表示的自符
\uXXXX ,XXXX为4个16进制的Unicode16字符
\UXXXXXXXX ,8个16进制表示的Unicode32字符

ASCII编码:
man ASCII :查看帮助文档命令

 


常用ASCII编码:
字符 十进制 十六进制
0 48 0x30
A 65 0x41
a 97 0x61

Unicode:
统一编码,分为Unicode16、Unicode32

序列的概念:
字符串就是序列
函数:
len(x) 返回字符串的字符个数
raw 字符串:
让转义符号\无效
格式:
r‘字符串内容’
print(r“\n\\\t”)
字符串的运算:
+ 用于拼接字符串
* 用于生成重复字符串
字符串的相乘只能与整数
+=   *= 与其他符合运算符相同
in / not in 运算符:
用于判断某个字符串是否在
相当于字符串出现过 如果出现过返回true 否则返回false
字符串的比较运算:
> >= < <= == !=
依次按照编码进行比较,直到最短字符串结束为止

索引(下标):
Python的字符串是不可以改变字符序列的

 

index:
字符串[整数表达式]
Python序列都可以用索引来访问序列中的对象
Python的序列正向索引是冲0开始的最后一个索引为len(s)-1
Python序列的反响索引是从-1开始的 -1是最后一个 第一个是 -len(s)

切片:
slice
从一个字符串序列中取出相应的元素重新组成一个字符串系列
语法:
字符串序列[(开始索引b):(结束索引e):(步长s)]
小括号括起的部分代表可省略
说明:
开始索引是切片开始切下的位置,0代表第一个元素,1代表第二个,-1代表最后一个
结束索引是切片的终止索引(但不包括终止点)
步长:
是切片每次获取当前元素后移动的方向和偏移量
没有步长,相当于取值完成后向右移动一个索引的位置默认1
当步长代表为正数时取正向切片 步长默认为1 开始位置为0 结束为len(s)步长代表下一次索引的取值增长值
当步长为负数时 取反向切片 默认的起始位置是最后一个元素,终止位置是第一个元素的前一个位置

Python3中常用于序列函数:
len(x)返回序列长度

max(x)返回序列最大值元素

min(x)返回序列最小止元素

字符串编码转换函数:
ord(c)返回一个字符的Unicode值(十进制)

chr(i)返回 i这个整数的值所对应的字符

整数转字符串函数:
bin(i) 将整数转换为二进制的字符串

oct(i) 将整数转换为八进制的字符串

hex(i) 将整数转换为十六进制的字符串

二进制转换其他进制是非常好转的 如图:

100=4   101=5 10=2  156=0o452 (八进制)

1100=c 1001=9       156=0x9c (十六进制)

字符串的构造函数:
str(obj=“”) 将对象转换为字符串

常用的字符串方法:
文档参见:
对象.方法名(方法传参)
"abc".isalpha() # 语法是对的
123.isalpha() # 语法是错的
方法 说明
S.isdigit() 判断字符串中的字符是否全为数字
S.isalpha() 判断字符串是否全为英文字母
S.islower() 判断字符串所有字符是否全为小写英文字母
S.isupper() 判断字符串所有字符是否全为大写英文字母
S.isspace() 判断字符串是否全为空白字符
S.center(width[,fill]) 将原字符串居中,左右默认填充空格 width:所居中字符串的长度 fill:默认填充空格

S.count(sub[, start[,end]]) 获取一个字符串中子串的个数 sub:所要获取的字符串 start:起始位置 end:结束位置
S.find(sub[, start[,end]]) 获取字符串中子串sub的索引,失败返回-1 start:起始位置 end:结束位置

S.strip() 返回去掉左右空白字符的字符串
S.lstrip() 返回去掉左侧空白字符的字符串
S.rstrip() 返回去掉右侧空白字符的字符串
S.upper() 生成将英文转换为大写的字符串
S.lower() 生成将英文转换为小写的字符串
S.replace(old, new[, count]) 将原字符串的old用new代替,生成一个新的字符串 count:更换的次数
S.startswith(prefix[, start[, end]]) 返回S是否是以prefix开头,如果以prefix开头返回True,否则返回False,
S.endswith(suffix[, start[, end]]) 返回S是否是以suffix结尾,如果以suffix结尾返回True,否则返回False

以下是不常用的
S.title() 生成每个英文单词的首字母大写字符串
S.isnumeric() 判断字符串是否全为数字字符

练习:
1.
输入一个字符串用s绑定
判断输入有几个人空格
将原字符串的左右空格空白符去掉
打印剩余的字符个数
判断输入的是否是数字
如果是数字判断这个数是否大于100

 答案:

print("Answer to question 1:", "\n")

s = input("plaese input at will string:")
print("you input string blank have ", s.count(" "))
print("string surplus:", len(s.strip()))
if s.isdigit() is True:
    if int(s) > 100:
        print("input integer:", s, ">100")
    else:
        print("input integer:", s, "<100")
else:
    print("you input contain alpha:", s)

 

2.
输入3行文字,让这三行文字在一个方框内居中显示
显示如下:
+---------------+
|       hello      |
|    123123    |
|       |
+---------------+
注:请不要输入中文

答案:

print("Answer to question 2:", "\n")

a = input("plaese input at will string 1:")
b = input("plaese input at will string 2:")
c = input("plaese input at will string 3:")
top = a
if top < b:
    top = b
if top < c:
    top = c
print("+" + "-" * (len(top) * 2 + 10) + "+")
print("|" + a.center(len(top) * 2 + 10) + "|")
print("|" + b.center(len(top) * 2 + 10) + "|")
print("|" + c.center(len(top) * 2 + 10) + "|")
print("+" + "-" * (len(top) * 2 + 10) + "+")

 

 

 

 

相关文章
|
17天前
|
移动开发 自然语言处理 Linux
Python中r前缀:原始字符串的魔法解析
本文深入解析Python中字符串的r前缀(原始字符串)的设计原理与应用场景。首先分析传统字符串转义机制的局限性,如“反斜杠地狱”问题;接着阐述原始字符串的工作机制,包括语法定义、与三引号结合的用法及特殊场景处理。文章重点探讨其在正则表达式、文件路径和多语言文本处理中的核心应用,并分享动态构建、混合模式编程等进阶技巧。同时纠正常见误区,展望未来改进方向,帮助开发者更好地理解和使用这一特性,提升代码可读性和维护性。
38 0
|
23天前
|
数据采集 监控 数据安全/隐私保护
Python正则表达式:用"模式密码"解锁复杂字符串
正则表达式是处理字符串的强大工具,本文以Python的`re`模块为核心,详细解析其原理与应用。从基础语法如字符类、量词到进阶技巧如贪婪匹配与预定义字符集,结合日志分析、数据清洗及网络爬虫等实战场景,展示正则表达式的强大功能。同时探讨性能优化策略(如预编译)和常见错误解决方案,帮助开发者高效掌握这一“瑞士军刀”。最后提醒,合理使用正则表达式,避免过度复杂化,追求简洁优雅的代码风格。
46 0
|
11天前
|
存储 数据采集 大数据
Python推导式进阶指南:优雅初始化序列的科学与艺术
本文系统讲解Python推导式的用法与技巧,涵盖列表、字典、集合推导式及生成器表达式。通过代码示例和性能对比,展示推导式在数据结构初始化中的优势:简洁高效、执行速度快30%-50%。文章分析基础语法、核心应用场景(如序列构造、键值对转换、去重运算)及嵌套使用,并探讨使用边界与最佳实践,强调可读性优先原则。最后指出,合理运用推导式能显著提升代码质量和处理效率,同时避免过度复杂化的陷阱。
26 0
|
3月前
|
索引 Python
python字符串类型及操作
本文主要讲解字符串类型的表示、操作符、处理函数、处理方法及格式化。内容涵盖字符串的定义、表示方法(单双引号、三引号)、索引与切片、特殊字符转义、常见操作符(如+、*、in等)、处理函数(如len()、str()、chr()等)、处理方法(如.lower()、.split()等)以及格式化方式(如.format())。通过实例代码详细介绍了字符串的各种用法和技巧,帮助读者全面掌握字符串操作。
105 2
python字符串类型及操作
|
3月前
|
存储 索引 Python
Python入门:6.深入解析Python中的序列
在 Python 中,**序列**是一种有序的数据结构,广泛应用于数据存储、操作和处理。序列的一个显著特点是支持通过**索引**访问数据。常见的序列类型包括字符串(`str`)、列表(`list`)和元组(`tuple`)。这些序列各有特点,既可以存储简单的字符,也可以存储复杂的对象。 为了帮助初学者掌握 Python 中的序列操作,本文将围绕**字符串**、**列表**和**元组**这三种序列类型,详细介绍其定义、常用方法和具体示例。
Python入门:6.深入解析Python中的序列
|
6月前
|
Python
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
275 64
|
6月前
|
Python
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
210 62
|
4月前
|
存储 人工智能 Python
[oeasy]python061_如何接收输入_input函数_字符串_str_容器_ 输入输出
本文介绍了Python中如何使用`input()`函数接收用户输入。`input()`函数可以从标准输入流获取字符串,并将其赋值给变量。通过键盘输入的值可以实时赋予变量,实现动态输入。为了更好地理解其用法,文中通过实例演示了如何接收用户输入并存储在变量中,还介绍了`input()`函数的参数`prompt`,用于提供输入提示信息。最后总结了`input()`函数的核心功能及其应用场景。更多内容可参考蓝桥、GitHub和Gitee上的相关教程。
63 0
|
5月前
|
存储 测试技术 Python
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
95 5
|
5月前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
133 7