2018-09-08 cao chucheng
KeyWord : Pycharm2018.02 Python 3.7
Explain:
module: sys , os
data type
Tuple
List
----------------------------------------------------------------------
1-----------------------------------------------------------------------------------------------------------------------------
pyc 即: _pycach 是什么? 答:c = compiled(编译)
高级语言变成机器语言过程,这个过程分为二种 -- 编译(先)和解释(后,解释型语言没有编译过程)。当执行.py文件时,其实python激活解释器,当告诉解释器,你开始工作了,但是在解释之前,其实执行的第一项工作和Java一样,是预编译。
2----------------------------------------------------------------------------------------------------------------------------------------
2018-09-08 23:20:42
数据类型: Tpe(X)查看数据类型
---
--
字节与字符串关系
3----------------------------------------------------------------------------------------------------------------------------------------
元组:元祖和列表相似,也就是存一组数,只不是它一旦创建,便不能修改,又称为只读列表。特点是小括号。
语法: name = (“cao”,"chu","cheng") | count 和 index
4-------------------------------------------------------------------------------------------------------------------------------
列表:
--
列表的相关操作,列表中存放的数据是可以进行修改的,例如"增"、"改"、"删"、"查"、
<1>添加元素("增"append, extend, insert)
append:通过append可以向列表添加元素
extend:通过extend可以将另一个集合中的元素逐⼀添加到列表中
insert:insert(index, object) 在指定位置index前插⼊元素object
<2>修改元素("改")
修改元素的时候,要通过下标来确定要修改的是哪个元素,然后才能进行修改
<3>查找元素("查"in, not in, index, count)
所谓的查找,就是看看指定的元素是否存在
in(存在), 如果存在那么结果为true,否则为falsenot
in(不存在),如果不存在那么结果为true,否则falseindex,
countindex和count与字符串中的⽤法相同
<4>删除元素("删"del, pop, remove)
列表元素的常⽤删除用法有:
del:根据下标进行删除
pop:删除最后一个元素
remove:根据元素的值进行删除
--
example code:
import copy #列表 names = ["shang", "shan#!","ruo","shui",["lao","zi"],"AnHui","HeFei"] print("names: ",len(names),names) print("names[0] - names[2]: ",names[0],names[2]) print("names[1:3] : ",names[1:3]) #切片 print("names[3] : ",names[3]) #切片 print("names[-2:] : ",names[-2:]) #切片 print("names[0:3] : ",names[0:3]) #切片 print("names[:3] : ",names[:3]) #切片 print("names[0:-1:2]: ",names[0:-1:2]) print("names[::2] : ",names[::2]) print("names[:] : ",names[:]) names.append("ShangHai") # 增加 append names.insert(8,"ChengDu") # 插入 insert names.insert(9,"XiaoTianTian") names[2] ="Najing" # 修改 典型方式 print("names: ",names) #delete names.append("app") # 增加 append names.append("sin") # 增加 append names.append("cos") # 增加 append names.append("cos") # 增加 append print("names: ",len(names),names) names.remove("app") # 删除 print("names: ",len(names),names) names.pop(10) # del names[10] = names.pop(10) print("names: ",len(names),names) # print("names.index('AnHui') : ",names.index("AnHui")) # 查询 位置 print("names[names.index('AnHui')]: ", names[names.index("AnHui")] ) # 查询 位置的值 print("names.count('cos') : ",names.count('cos')) # 统计 # 情况列表 # names.clear() # 排序 ASCII # names.sort() # 反转列表 names.reverse() print("names: ",len(names),names) names.reverse() print("names: ",len(names),names) # print(names) names2 = [1,2,3,4] print("names2: ",len(names2),names2) names.extend(names2) # 增加 列表 print("names: ",len(names),names) del names2 print("names: ",len(names),names) print("id(names): ",id(names)) name1 = copy.copy(names) # 复制 print("id(name1): ",id(name1)) name2 = copy.deepcopy(names) # 复制 print("id(name1): ",id(name2)) print("names: ",len(names),names) print("name2: ",len(name2),name2) # ergodic Local_x =0 for Local_i in names: Local_x += 1 print(" %2d List: "%Local_x, Local_i) print("names: ",len(names),names)
--
run result
--
C:Python34python.exe C:/Users/caochucheng/Desktop/Python/B_Source/Day_2_source/names.py names: 7 ['shang', 'shan#!', 'ruo', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei'] names[0] - names[2]: shang ruo names[1:3] : ['shan#!', 'ruo'] names[3] : shui names[-2:] : ['AnHui', 'HeFei'] names[0:3] : ['shang', 'shan#!', 'ruo'] names[:3] : ['shang', 'shan#!', 'ruo'] names[0:-1:2]: ['shang', 'ruo', ['lao', 'zi']] names[::2] : ['shang', 'ruo', ['lao', 'zi'], 'HeFei'] names[:] : ['shang', 'shan#!', 'ruo', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei'] names: ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian'] names: 14 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'app', 'sin', 'cos', 'cos'] names: 13 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'sin', 'cos', 'cos'] names: 12 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos'] names.index('AnHui') : 5 names[names.index('AnHui')]: AnHui names.count('cos') : 2 names: 12 ['cos', 'cos', 'XiaoTianTian', 'ChengDu', 'ShangHai', 'HeFei', 'AnHui', ['lao', 'zi'], 'shui', 'Najing', 'shan#!', 'shang'] names: 12 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos'] ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos'] names2: 4 [1, 2, 3, 4] names: 16 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos', 1, 2, 3, 4] names: 16 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos', 1, 2, 3, 4] id(names): 36049864 id(name1): 35843328 id(name1): 36050664 names: 16 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos', 1, 2, 3, 4] name2: 16 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos', 1, 2, 3, 4] 1 List: shang 2 List: shan#! 3 List: Najing 4 List: shui 5 List: ['lao', 'zi'] 6 List: AnHui 7 List: HeFei 8 List: ShangHai 9 List: ChengDu 10 List: XiaoTianTian 11 List: cos 12 List: cos 13 List: 1 14 List: 2 15 List: 3 16 List: 4 names: 16 ['shang', 'shan#!', 'Najing', 'shui', ['lao', 'zi'], 'AnHui', 'HeFei', 'ShangHai', 'ChengDu', 'XiaoTianTian', 'cos', 'cos', 1, 2, 3, 4] Process finished with exit code 0
5----------------------------------------------------------------------------------------------------------------------------------------
字符串
6----------------------------------------------------------------------------------------------------------------------------------------
字典
7----------------------------------------------------------------------------------------------------------------------------------------
集合
--
8----------------------------------------------------------------------------------------------------------------------------------------
9----------------------------------------------------------------------------------------------------------------------------------------
10----------------------------------------------------------------------------------------------------------------------------------------
-- OS是python标准模块, 利用 import 语句输入OS模块。
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
os.linesep 输出当前平台使用的行终止符,win下为" ",Linux下为" "
os.pathsep 输出用于分割文件路径的字符串
os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
--
-- sys是python标准模块, 利用 import 语句输入sys 模块。
当执行import sys后, python在 sys.path 变量中所列目录中寻找 sys 模块文件。
然后运行这个模块的主块中的语句进行初始化,然后就可以使用模块了 。
sys.argv 命令行参数List,第一个元素是程序本身路径
sys.exit(n) 退出程序,正常退出时exit(0)
sys.version 获取Python解释程序的版本信息
sys.maxint 最大的Int值
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform 返回操作系统平台名称
--
1 import os
2
3 cmd_res = os.system("dir") #执行命令
4 print("-->",cmd_res)
5 os.mkdir("new_dir")
--
end----------------------------------------------------------------------------------------------------------------------------------------