携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第5天
- NP17 生成列表
描述
一串连续的数据用什么记录最合适,牛牛认为在Python中非列表(list)莫属了。现输入牛牛朋友们的名字,请使用list函数与split函数将它们封装成列表,再整个输出列表。
输入描述:
输入一串字符串,它们之间通过空格间隔开。
输出描述:
输出封装后的列表。
代码如下:
str = input()
list1 = str.split()
print(list1)
字符串处理常用函数小汇总:
text="only YOU Loving yoU,你是我的唯一,jUst YoU,我能等你下课吗?能不能一起去逛街?达能小王子"
#大小写转换
text.upper() #大写
text.lower() #小写
text.title()#首字母大写
text.capitalize()#第一个字母大写
text.swapcase()#大小写对调
#字符串的搜索
text.count("o")#搜索并统计"o"出现的次数
text.count("o",28)#搜索并统计,从第28位开始,"o"出现的次数
text.startswith("only")#text以"only"开通
text.startswith("only",2,10)#text的第3-9个字符以"only"开通
text.find("you")#查找you
text.replace("u","V",2)
#填充或者剔除某些信息
"1999".rjust(10,"$")#前一个字符代表填充后字符串的总长度
"1999".rjust(5,"$")
"1999".zfill(9)#用0填充,类似 "1999".rjust(9,"0")
"1999".rjust(9,"0")
"1999".center(50) #在左右两边都假设空格
" 1999 ".strip()#去重左右两边的空格
"1999".strip("9")#去重左右两边的"9"
" 1999 ".strip("9")#去重左右两边的"9",两边是空格没有9
#字符串的分割与合并
text.replace("能",",")
text1=text.replace("能","\n")
print(te
print(text.replace("能","\n"))
text.split("能")#以"能"为结点把str拆成一个字列表
text.partition("能") #以"能"为结点把str拆成一个字元组
text.rpartition("能")
text1.splitlines()#识别空行进行分割
text1.split("\n")#同上分割空行
"@".join(text)#把@插入到str的每一个字符中
"12345".join(" ")#重复并拼接
- NP18 生成数字列表
描述
牛牛在牛客网系统录入了一连串数字,数字之间依靠逗号隔开,你能帮助他将这些数字存储在列表中吗,列表元素以int的形式。
输入描述:
输入一行整数,数字之间以空格间隔。
输出描述:
输出这些数字组成的完整列表。
代码如下:
str1=input()
#使用split()将字符串生成列表
list1=str1.split()
#创建一个空列表
list2=[]
#将数据处理后依次插入到列表(这一步可以简化,详见下方一个代码块)
for i in list1:
a=int(i)
list2.append(a)
print(list2)
将这个代码变形,简化如下
#这是另一个知识点,list推导式
list1 = [int(i) for i in input().split()]
print(list1)
- NP19 列表的长度
描述
牛牛学会了使用list函数与split函数将输入的连续字符串封装成列表,你能够帮他使用len函数统计一些公输入了多少字符串,列表中有多少元素吗?
输入描述:
输入一行多个字符串,字符串之间通过空格间隔。
输出描述:
输出列表的长度。
代码如下:
str = input()
list1 = str.split(" ")
list2 = []
for i in list1:
list2.append(i)
print(len(list2))
#print(list2)
- NP26 牛牛的反转列表
描述
牛牛有一个列表记录了各个朋友的喜欢的数字,num = [3, 5, 9, 0, 1, 9, 0, 3],请你帮他创建列表,然后使用reverse函数将列表反转输出。
输入描述:
无
输出描述:
第一行输出创建好的原始的列表,第二行输出反转后的列表。
代码如下:
num = [3,5,9,0,1,9,0,3]
print(num)
num.reverse()
print(num)
注意:这里的print(num.reversr())是没有输出的。
这是因为因为reverse函数只是个对列表反转的函数,返回值是none,直接print(num.reverse())是print函数的返回值,什么都没有
- NP27 朋友们的喜好
-
描述
牛牛有一个name = ['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'] 记录了他最好的朋友们的名字,请创建一个二维列表friends,使用append函数将name添加到friends的第一行。
假如Niumei最喜欢吃pizza,最喜欢数字3,YOLO最喜欢吃fish, 最喜欢数字6,Niu Ke Le最喜欢吃potato,最喜欢数字0,Mona最喜欢吃beef,最喜欢数字3。
请再次创建一个列表food依次记录朋友们最喜欢吃的食物,并将创建好的列表使用append函数添加到friends的第二行;
然后再创建一个列表number依次记录朋友们最喜欢的颜色,并将创建好的列表使用append函数添加到friends的第三行。
这样friends就是一个二维list,使用print函数直接打印这个二维list。
输入描述:
无
输出描述:
[['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'], ['pizza', 'fish', 'potato', 'beef'], [3, 6, 0, 3]]
代码如下:
name = ['Niumei','YOLO','Niu Ke Le','Mona']
friends=[]
friends.append(name)
food=['pizza','fish','potato','beef']
number = [3,6,0,3]
friends.append(food)
friends.append(number)
print(friends)