python字符串操作
函数strip()的作用:去掉字符串两侧空格或指定字符
三重引号可以表示所有字符串的格式信息
字符串的创建:
1.使用赋值运算符“=”
2.str()函数
读取字符串:
1.读取字符:字符串名[索引]
索引下标不能越界
s='hello'
print(s[0])
结果:
2.字符串切片:字符串名[开始索引:结束索引:步长]
s='hello new year'
print(s[-1:-20:-1])
字符串连接:
使用+连接:(要将数字类型转换为字符串类型再相加)
s='hello new year'
print(s+str(3))
结果:
字符串重复:
“hello”*3
**字符串比较:**使用关系运算符:
比较规则:
print(''<'0')
结果:空字符串比其他字符串都要小,因为它的长度为0
字符串子串查找:
find方法:str.find(substr,[start,end])
返回首次出现的位置
没有的话返回值为-1
s="beijing tianjin shanghai beijing chongqing"
print(s.find("beijing",3))
结果:
字符串替换:
str.replace(old,new(,max))
max:最多替换掉的个数
s="beijing tianjin shanghai beijing beijing chongqing"
print(s.replace("beijing","abaaba",2))
字符串分离:
sep.split([sep])
如果没有分割,会返回整个列表
栗子一:
s="beijing tianjin shanghai beijing beijing chongqing"
print(s.split())
结果:
栗子二:
s="beijing,tianjin,shanghai,beijing,beijing,chongqing"
print(s.split(','))
结果:
字符串连接:
join方法:sep.join(sequence)
s=["beijing","tianjin","shanghai","beijing","beijing","chongqing"]
sep="->"
str=sep.join(s)
print(str)
结果:
python字典
形式:
{<键1>:<值1>,<键2>:<值2>,<键3>:<值3>,...,<键n>:<值n>}
字典的键:
不可变类型,eg整数、实数、复数、字符串、元组等
键不能重复,而值可以重复
一个键只能对应一个值,但多个键可以对应相同的值
a={}
print(type(a))
结果:
<class ‘dict’>
python函数
例题
1.金字塔
n=int(input())
for i in range (1,n+1):
for j in range(1,n-i+1):
print(" ",end="")
for j in range(1,2*i):
print("*",end="")
print()
结果:
2.乘法表:
for i in range (1,10):
for j in range(1,i+1):
print("%d*%d=%d "%(j,i,i*j),end="")
print()
结果:
3.图形打印:
n=int(input())
for i in range (1,n+1):
for j in range(1,i+1,):
print(" ",end="")
for j in range(1+i,n+1):
print("*",end="")
print()
结果:
4.
n = int(input())
dict1 = {'语文':0,'数学':0,'英语':0}
for i in range(n):
dict2 = eval(input())
if dict2['语文'] > dict1['语文']:
dict1['语文'] = dict2['语文']
if dict2['数学'] > dict1['数学']:
dict1['数学'] = dict2['数学']
if dict2['英语'] > dict1['英语']:
dict1['英语'] = dict2['英语']
print('语文:' + str(dict1['语文']))
print('数学:' + str(dict1['数学']))
print('英语:' + str(dict1['英语']))
5.杨辉三角
num=int(input())
list1 =[]
for n in range(num):
row =[1]
list1.append(row)
if n ==0:
print(1)
continue
for m in range(1,n):
row.append(list1[n - 1][m - 1] + list1[n - 1][m])
row.append(1)
for i in range (len(row)):
if i<(len(row)-1):
print(row[i],end=" ")
else:
print(row[i],end="\n")
小tip
1.元组是不可变的,不支持列表对象的inset()、remove()等方法,也不支持del命令删除其中的元素,但可以使用del命令删除整个元组对象。
2.字符串对象和元组对象是不可变对象,列表对象为可变对象。
3.在字典里,同一个键不可以对应两个或多个值。
4.Python字典和集合不支持双向索引。
5.set(x):可以用于生成集合,输入的参数可以是任何组合数据类型,返回结果是一个无重复且无序的集合
6.输入两个数字:
m, n = input().split()
m, n = int(m), int(n)
m,n=map(int,input().split())