目录
一、split输入多个元素以空格隔开
1、输入两个字符串以空格隔开
#输入用例如“2 3”、“xsy xsj”
x,y=input().split()
2、输入两个字符串以逗号隔开
#输入用例如“2、3”、“xsy、xsj”
x,y=input().split(',')
3、以上两种都默认x和y为String类型,若输入x+y得到的是字符串拼接结果如图1所示,若想让x和y以int类型接收输入的数据,则通过map类型转换为int型,此时输出结果如图2所示
x,y=map(int,input().split())
图1
图2
4、输入一组整数用列表接收,list()方法用于将元组转换为列表。
*使用int()、list()之类的进行类型转换
#list()方法用于将元组转换为列表。输入2 3 4 5将放入nlist为列表类型[2,3,4]
nlist = list(map(int, input().split()))
5、输入一个字符串用列表接收,list()方法。例如输入100201转为[1,0,0,2,0,1]
T=list(input())
二、list列表操作
1、列表长度,len()方法
n=len(list1)
2、列表排序,sort()函数,reverse默认为true,True为降序,False(大写)为升序
#reverse默认为true,true为升序,false为降序
list1.sort(reverse=False)
3、列表最小值,min()方法
x=min(list1)
4、列表某个值的下标,index()函数
i=list1.index(x)
5、删除列表某个元素,del()函数
#按下标删除第一种写法
del list1[i]
#按下标删除第二种写法
del(list1[i])
#删除下标从i到j的元素,左闭右开
del(list1[i:j+1])
#按元素值删除
del list1[list1.index(x)]
remove删除
aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
aList.remove('xyz');
6、列表中添加某个元素
(1)+运算符,两个列表相加赋值,相当于新生成一个列表,涉及大量元素添加时最好不用这个方法
list1=[1,2,3,4]
#末尾加5
list1=list1+[5]
(2)append方法,末尾添加一个元素,原地修改列表
list1=[1,2,3,4]
#末尾加5
list1.append(5)
(3)extend方法,末尾添加多个元素
list1=[1,2,3,4]
#末尾加多个元素
list1.extend([5,6,7])
(4)insert方法,将某个元素插入到列表中指定位置
list1=[1,2,3,4]
#在下标为2处添加一个元素0,list1变为[1,2,0,3,4]
list1.insert(2,0)
7、列表中是否有某个元素
if y in list1
三、print用法
1、print多个
#逗号拼接,默认空格分隔,输出为x and y
print('x','and','y')
#设置sep为空,输出为xandy
print('x','and','y',sep='')
2、print的end参数,end默认为’\n’换行。
#输出csdn并换行
print('csdn')
#输出csdn不换行
print('csdn',end='')
#输出csdn,以空格结尾,下一次print接着空格输出
print('csdn',end=' ')
四、if和for语法
#and和or
if n >= 1 and n <= 200:
#0~len(list1),左闭右开:0<=j<len(list1)
for j in range(len(list1)):
五、字典
book_dict = {"price": 500, "bookName": "Python设计", "weight": "250g"}
#添加
book_dict["owner"] = "tyson"
#修改
book_dict.update({"country": "china"})
六、杂
1、elif而不是else if
2、主函数为if __name__ == '__main__':
3、p=[i for i in range(n)]
4、生成[[],[],[]]:
tree=[]
for i in range(a):
tree.append([])
5、不是a,b=int(input().split(' ')),而是a,b=map(int,input().split(' ')),且是input().split(' ')
6、列表元素是否相同
a=[1,2,4]
b=[2,1,4]
print(set(a)==set(b))
7、列表元素取交集
c = list(set(list_a) & set(list_b))
8、列表元素是否包含
a={1,2,4}
b={2,4}
print(b < a)
9、class中函数要用self需要在函数中传def a(self)
10、无限float('inf')
11、开根号:x**(1/3)
12、取对数:math.log(x,2) log以2为底x的对数
13、math.ceil() math.floor()
14、z=[[] for _ in range(n)] z=[[0]*n for _ in range(n)] d=[[[]for _ in range(n)]for i in range(n)]
15、取余%,取整//
16、字符串变为列表:p=list(y)
列表变为字符串:p=''.join(p)
17、递归超出深度:
import sys
sys.setrecursionlimit(100000) #例如这里设置为十万
18、在Python中,列表是可变对象,所以在函数内部对列表的修改会直接反映到原列表上。但变量则不会修改如下两个例子解释。
#变量不会被修改
def a():
a=100
a1=2
a()
print(a1)
#列表值被修改了
def a():
colo[1]=100
colo=[1,2,3,4]
a()
print(colo)