模块也可以叫库。分为标准库和第三方库。区别在于标准库不需要安装,可以直接导入的内置模块。
第三方库则是需要安装的库。
import sys sys.argv #打印环境变量(相对路径) import os os.system(‘dir‘) #执行命令,不执行结果 a = os.popen(‘dir‘).read() #用read()方法调取它的结果,结果存在内存中。 print(a)
os.mkdir(‘new dir‘) #创建目录
驱动器 C 中的卷没有标签。
卷的序列号是 A649-EE2A
C:\Users\Administrator\PycharmProjects\day01\day02 的目录
2019/02/26 22:16 <DIR> .
2019/02/26 22:16 <DIR> ..
2019/02/25 19:39 165 encode to decode.py
2019/02/26 11:11 <DIR> fp
2019/02/26 16:58 1,122 list.py
2019/02/26 20:26 1,329 shopping.py
2019/02/26 21:47 21 str1.py
2019/02/26 22:16 263 模块初始.py
2019/02/26 16:57 644 浅拷贝.py
2019/02/22 21:11 551 爬虫.py
7 个文件 4,095 字节
3 个目录 8,209,002,496 可用字节
Number
int(整型),注:在python2.x中有份整型和长整型long。
float 浮点数,带有小数点的浮点数。
布尔型
0和1 True or False
字符串
由有单引号或双引号括起来的。
s = ‘sleiman is very handsome‘ s1 = ‘sleiman\n‘ print(s.capitalize()) #首字母大写 Sleiman is very handsome print(s.title()) #首席母大写 Sleiman Is Very Handsome print(s.count(‘e‘)) #出现的次数 3 print(s.center(50,‘-‘)) #-------------sleiman is very handsome------------- print((‘sleiman‘).endswith(‘an‘))#以an结尾的 print(s1.startswith(‘sl‘)) #以sl开头 print((‘格式化输出:%s‘% s).format()) print(s.find(‘s‘))#索引值 print(s.isdigit()) #是否为整数 print((‘t1‘).isalnum()) #是否为字母或数字 print(s.isalpha()) #是否为字母 print(s.isdecimal())#是否为数字 print(s.isidentifier())#判断是否为合法是标识符 print(s.islower())#是否为小写 print(s.isupper())# 是否为大写 print(s.lower())#小写 print(s.upper())#大写 s2 = ‘ str ‘ print(s2.strip()) #去掉两边的空格\t\n空格 # 字符串拼接 print(‘+‘.join([‘1‘,‘2‘,‘3‘])) print(s2.replace(‘r‘,‘l‘,1)) #参数一:被替换的参数 参数二:替换的参数,三:替换的次数 print(s.split(‘ ‘)) #按空格分割,逗号 s3 = ‘\nstr‘ print(s3.splitlines()) #按行分割
# 列表的增删改查 names = [‘tom‘, ‘candy‘, ‘jerry‘ ,‘hurry‘, ‘alan‘] # 切片 # print(names[:2]) # print(names[-3:]) print(names[: :2]) #[‘tom‘, ‘jerry‘, ‘alan‘] # 增 names.append(1) print(names) #指定插入 names.insert(1,‘1‘) #[‘tom‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] names.insert(3,‘3‘) #[‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] print(names) #增加 names.extend([1,2,3]) #合并 [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1, 2, 3] #删 # names.remove(‘1‘) [‘tom‘,‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] # del names[3] [‘tom‘, ‘1‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] names.pop() #默认从最后一个开始删除,指定下标志删除 # [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘] # names.clear() #清空列表 [] print(names) # 改 names[0] = ‘gary‘ #[‘gary‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘] print(names) #查 print(names.index(‘1‘)) #1 print(names.count(1)) #2次 # names.reverse() print(names) #反转 list1 = [1,2,3,4,5,6] list1.sort(reverse=True) #降序 默认升序 print(list1)
元组由小括号括起来的。一旦初始化,就不能更改。
注;后面的数据类型下次会更新上来。
#切片 names = (‘alan‘,‘jack‘) print(names[:1]) #查询 print((1,2,3,4,1,1).count(1)) #3
注:后面的数据类型下次更新上来。
# result = 值1 if 条件 else 值2 # 条件为真则result为值1 # 条件为假则result为值2 a = 1 b = 2 result1 = a if a>b else b #2 print(result1)
赋值拷贝:list1与list2分别指向 list1的值,list1重新赋值后指针发生改变,list2指针不变。
浅拷贝:list1调用copy()方法后与上面的赋值拷贝原理一样,区别在于在二维列表中,list1和list2都指向了list[0] = ‘zero‘这个值,并没有复制它。
深拷贝:list1复制了二维列表中的值,而list2不变。
#复制拷贝 list1 = [1,2,[3,4]] list2 = list1 print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1 = [‘zero‘,2,[3,4]] print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] # 浅拷贝 list1 = [1,2,[3,4]] list2 = list1.copy() print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[0] = ‘zero‘ print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[2][0] = ‘three‘ print(list1) # [‘zero‘, 2, [‘three‘, 4]] print(list2)# #[1, 2, [‘three‘, 4]] #深拷贝 import copy list1 = [1,2,[3,4]] list2 = copy.deepcopy(list1) print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[0] = ‘zero‘ print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[2][0] = ‘three‘ print(list1) #[‘zero‘, 2, [‘three‘, 4]] print(list2) # [1, 2, [3, 4]]
#字符串转二进制 print(‘中国‘.encode(‘utf-8‘)) #编码 b‘\xe4\xb8\xad\xe5\x9b\xbd‘ #相反 解码 print(b‘\xe4\xb8\xad\xe5\x9b\xbd‘.decode(‘utf-8‘)) #中国
原文:https://www.cnblogs.com/liux1996/p/10441126.html