Python练习之元组,字符串
- 思维导图
- 元组用法
- 字符串用法
- 用"\"进行转义
- 三引号运用
- 切片与拼接
- 内置函数
- count
- just
- strip
- partition
- split(str=' ',num)
- splitlines([keepends])
- maketrans 和 translate
- 格式符
- 习题练习及解答
思维导图
元组
字符串
元组用法
字符串用法
用""进行转义
print('let\'s go')
print("let's go")
print('C:\\now')
print("C:\\Program Files\\Intel\\Wifi\\Help")
转义字符 |
描述 |
\ |
反斜杠符号 |
’ |
单引号 |
" |
双引号 |
\n |
换行 |
\t |
横向制表符(TAB) |
\r |
回车 |
三引号运用
para_str ="""
这是一行多行字符,
可包括制表符(\t),
和换行[\n],
"""
print(para_str)
这是一行多行字符,
可包括制表符( ),
和换行[
],
切片与拼接
str1 = 'I Love LsgoGroup
print(str1[:6])
print(str1[5])
print(str1[:6] +”插入的字符串" + str1[6:])
s ='Python'
print(s)
print(s[2:4])
print(s[-5:-2])
print(s[2])
print(s[-1])
内置函数
book ="book"
Book =book.capitalize()
print(Book)
book2=Book.lower()
print(book2)
book3 =book2.upper()
print(book3)
book4 =book3.swapcase()
print(book4)
count
- count(str,beg=0,end =len(string))
string ="DAXIExiaohai"
print(string.count('xi'))
just
>>> str ="0101"
>>> str.ljust(8,'0')
'01010000'
>>> str2 ='1010'
>>> str2.rjust(8,"0")
'00001010'
strip
>>> chars =" Make in China "
>>> chars2 =chars.lstrip()
>>> chars3 =chars.rstrip()
>>> char5 =chars.strip()
>>> print(chars2,'\n',chars3,'\n',char5)
Make in China
Make in China
Make in China
partition
>>> str5 ="I love China"
>>> str5 =" I love China "
>>> str5.strip().partition("C")
('I love ', 'C', 'hina')
>>> str5.strip().rpartition("h")
('I love C', 'h', 'ina')
>>> str =" I love Beijing "
>>> str.strip().replace("I","We")
'We love Beijing'
split(str=’ ',num)
>>> string = " Changjiang River is the most beautiful scence in the world! "
>>> string2 =string.strip().split()
>>> string3 =string.strip().split("o")
>>> print(string2,'\n',string3)
['Changjiang', 'River', 'is', 'the', 'most', 'beautiful', 'scence', 'in', 'the', 'world!']
['Changjiang River is the m', 'st beautiful scence in the w', 'rld!']
str3 ="""
say
hello
world
"""
str3.split('\n')
string = "hello boy< [www. baidu. com] >byebye"
print(string.split('[')[1].split(']')[0])
print(string.split('[')[1].split('l')[0].split('.'))
splitlines([keepends])
>>> str ="I live\nin\nChina"
>>> str.splitlines()
['I live', 'in', 'China']
maketrans 和 translate
str ="This is string example...wow"
intab ='aeiou'
outlab ='12345'
>>> translab =str.maketrans(intab,outlab)
>>> print(translab)
{97: 49, 101: 50, 105: 51, 111: 52, 117: 53}
>>> str.translate(translab)
'Th3s 3s str3ng 2x1mpl2...w4w'
格式符
符号 |
描述 |
%c |
格式化字符及其ASCI码 |
%s |
格式化字符串,用sr0方法处理对象 |
%r |
格式化字符串,用per0方法处理对象 |
%d |
格式化整数 |
%o |
格式化无符号八进制数 |
%x |
格式化无符号十六进制数 |
%X |
格式化无符号十六进制数(大写) |
%f |
格式化浮点数字,可指定小数点后的精度 |
%e |
用科学计数法格式化浮点数 |
%E |
作用同%e,用科学计数法格式化浮点数 |
%g |
根据值的大小决定使用%f或%e |
%G |
作用同%g,根据值的大小决定使用%f域%E |
辅助命令
符号功能
mn |
m 是显示的最小总宽度,n是小数点后的位数(如果可用的话) |
- |
用做左对齐 |
+ |
在正数前面显示加号(+) |
# |
在八进制数前面显示零(0),在十六进制前面显示’0x’或者’0X(取决于用的是x还是X) |
0 |
显示的数字前面填充’0而不是默认的空格 |
习题练习及解答
1、
> 元组概念
写出下面代码的执行结果和最终结果的类型
* (1, 2)*2
* (1, )*2
* (1)*2
```python
answer1 =(1,2) * 2
answer2 =(1,) *2
answer3 =(1) *2
print(answer1)
print(answer2)
print(answer3)
# (1, 2, 1, 2)
# (1, 1)
# 2
"""
* 是重复操作符,分别对元组,元组中的数,和数进行重复
"""
```
2
>2、拆包过程是什么?
a, b=1, 2
上述过程属于拆包吗?
可迭代对象拆包时,怎么赋值给占位符?
```
# 答案可参考:https://blog.csdn.net/weixin_42635759/article/details/81990343?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param
拆包过程是指利用一句赋值语句按顺序将元组中的各元素赋值给=左边的各个变量。
上述过程属于拆包,1, 2已经定义了一个元组,与左边结构相对应,可以算作解压元组。
在可迭代对象拆包时,使用_(单个元素),*_(连续多个元素)进行占位。