今天学习内容如下:
- 关于环境搭建,大神说再试一下用一个纯净版的Ubuntu,再重新装一遍试试,之前的问题依然没有解决,看看重新走一遍还有没有问题;目前还没有什么突破性的结果。
- 开展其他知识的学习
- 坚持算法练习。今天做了几道牛客网在线算法练习,(括号匹配问题,特殊的时间)。
- 巩固Python的基础知识。
- 在ilearing,看了开发者测试-自动化测试基础,测试的思维,测试的路线等。
def kuohao(s):
a = []
mark = []
for i in range(len(s)):
if s[i] == "(":
a.append(s[i])
mark.append("I")
elif s[i] != ")":
mark.append(" ")
else:
pass
if len(a) != 0 and s[i] == ")":
mark.append(" ")
a.remove("(")
for j in range(len(mark)-1, -1, -1):
if mark[j] == "I":
mark.remove("I")
mark.insert(j, " ")#这个是在某个位置插入不是修改
break
elif len(a) == 0 and s[i] == ")":
mark.append("?")
else:
continue
print(s)
print("".join(i for i in mark))
if __name__ == "__main__":
while True:
s = input()
kuohao(s)
基础知识:
def fun(*args, **kwargs):
print(args, kwargs)
a = [1,2,3,4,5,5]
b ={'a':7,'b':8,'c':9} #字典的values可以取任何数据类型,但键-key必须是不可变类型的,如字符串,数字或元组
c = {1:2, 3:2}
fun(1,2,3)
fun(1,2,3,"a")
fun(s=1, d=3)
print(c)
fun(*a, **b)
fun(*a, **c)#报错,这个,,,TypeError: fun() keywords must be strings
结果如下
(1, 2, 3) {}
(1, 2, 3, 'a') {}
() {'s': 1, 'd': 3}
{1: 2, 3: 2}
(1, 2, 3, 4, 5, 5) {'a': 7, 'b': 8, 'c': 9}
#报错
*args, **kwargs之间的含义与区别,*args称为位置参数,当不确定往函数中传入多少个参数时,或者传入的参数类型是列表、元组等,可以使用*args。如果我们不知道要往函数中传入多少个关键词参数,或者想传入字典的值作为关键词参数时,那就要使用**kwargs,
**kwargs又称为关键字参数。
每天复习一些基础知识和算法!