1. #!/usr/bin/python 和#!/usr/bin/env python 含义python
大部分python文件的头部都会写上 #!/usr/bin/python 或者 #!/usr/bin/env ,这个语句主要和运行模式有关,linux
若是咱们用普通运行模式例如(linux) : python *.py 那么这个语句在此运行模式下无效。若是想让python程序像普通程序同样运行,例如:./*.py (文件要有可执行权限chmod a+x *.py),这个语句就起做用了,他用来为脚本语言指定解释器,一般认为用 #!/usr/bin/env python 要比 #!/usr/bin/python 更好,由于 python 解释器有时并不安装在默认路径,例如在虚拟环境中。app
解释:函数
#!/usr/bin/env python
这种写法在你机器上安装了多个版本的python的时候有意义,这样声明的时候,会去取你机器的 PATH 中指定的第一个 python 来执行你的脚本。若是这时候你又配置了虚拟环境的话,那么这样写能够保证脚本会使用你虚拟环境中的 python 来执行。
#!/usr/bin/python
表示写死了就是要 /usr/bin/python 这个目录下 python 来执行你的脚本。这样写程序的可移植性就差了,若是此路径下python命令不存在就会报错。
因此通常状况仍是用第一种写法。
2. 1字节=8比特
3. 变量命名规范
4. 全局变量与局部变量
5. 字典的key能够是什么类型
不可变数据均可以作为key,如数字、字符串、元组等
6.ascii unicode utf-8 gbk之间的关系
7.下列代码输出结果是 ”成长%是烦恼的”
1 s = "成长%%是烦%s的" 2 n = s %('恼') 3 print(n)
8.下列数据类型,是否可改,内部"k2"能改吗,可改的话如何添加一个字符串。深浅拷贝区别?spa
("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) code
a=("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44]) blog
a[1][2]["k2"].append("string")coffeescript
浅拷贝只拷贝第一层ip
9. break continue pass 区别utf-8
10.求差集 s.difference(t)
11.lambda 匿名函数
12.下列代码运行结果 None, 函数没有返回值,默认返回None.
1 def func(arg): 2 arg.append(55) 3 4 li = [11, 22, 33, 44] 5 li = func(li) 6 print(li)
13.使用while循环实现输出1 - 2 + 3 - 4 + 5 ... - 100 的和,答案-50
想出了三种方法:
1 #-------------------方法1:取模------------------------------- 2 3 s=0 4 i=1 5 while(i<101): 6 if(i%2==1): 7 s=s+i 8 else: 9 s=s-i 10 i=i+1 11 print(s) 12 13 #---------------------方法2:指数函数---------------------------- 14 15 s=0 16 i=1 17 while(i<101): 18 s=s+pow(-1,i+1)*i 19 i=i+1 20 print(s) 21 22 #----------------------方法3:变量变符号--------------------------- 23 s=0 24 i=1 25 j=1 26 while(i<101): 27 s=s+i*j 28 i=i+1 29 j=-j 30 print(s) 31 -
14.打印1-100既能被3整除又能被5整除的数
1 for i in range(1,101): 2 if(i%3==0 and i%5==0): 3 print(i) 4 5 ''' 6 答案: 7 15 8 30 9 45 10 60 11 75 12 90 13 '''