python入门基础笔记
2017-05-23 23:22
423 查看
新想法: 送矿泉水---送货app linux操作系统 bin sbin 可执行程序 home 目录 temp 临时生成的目录 根目录: / 用户目录: 用户工作目录或家目录 /home/user 相对路径: 上一层路径(父目录) 。。 当前路径 。 根目录 。。和。 都是代表根目录 文件的权限: r --read w --write x --执行 Linux命令操作:最少的有200个 Linux命令格式: command [-options] [parameter] 黑窗口 ctrl + shift + +/- 字体放大缩小 ls 显示当前路径 pwd 显示当前路径 cd 。。 跳转到 ls -l 查看的文件夹和文件 drwxrwxr文件 - 文件夹 cd 文件夹: 跳到文件或者文件夹 自动补全功能 cd D(ownloads) cd + table键 空格键 翻页功能 q 退出文件 历史命令: history touch 1.py 在当前目录创建一个1.py文件(前提是获取超级管理员权限) ls -lh 查看文件,并将文件的大小以kb的形式显示出来 ls -alh 显示隐藏文件并显示以kb大小的文件 ls *.py 显示以什么结尾的文件 ls 1.* 显示以1开头的文件 ls 1?* ? 代表站位符 ls 1[23]3.py [23]里面代表是2或者3的 ls \*a 查找文件名为*a 的文件 重定向: ls -lha >ls.txt 创建文件,并将内容显示到文件中 --> 接下来用记事本打开:gedit ls.txt ls -lha >> ls.txt: 在ls.txt文件中继续追加内容,前面的内容不擅长 cat ls.txt 查看文件内容,不可以编辑 more ls.txt 分页显示,按空格进行查看页面内容 水管功能 ls -alh | more 右边的程序调用左边的程序,就是将左边的程序显示到右边去。 cd ~ ---> pwd 跳转到家目录 cd ctrl c 强制停止 cd ctrl z 强制停止 cd - 快速回到上一次路径 pwd 显示当前文件路径 mkdir 创建文件夹 rmdir dongge/ 移除文件夹 remove的意思,删除非空文件夹 rm 2.py 删除文件 rm dongge -r 删除带有文件的文件夹,递归的删除 rm dongge -rf 强制删除带有文件的文件夹 创建链接文件ln 相当于快捷文件 软连接**** ln -s 123.py 123link_s.py 前面为源文件,后面为快捷文件 硬链接**** 同样指向文件,不止一个快捷键指向源文件 查看文件内容,cat (也可以完成多个文件的合并) cat 234.py > 100.py 合并文件内容 cat 324.py >> 230.py 合并文件内容 grep ‘oo’ 101.py 模糊搜索 oo 在文件的位置 grep ’箭头上00‘ 搜索以什么开头的 grep [Hhello] 拷贝 cp 23.py test/ 拷贝。。到哪个项目下 mv 12.py test/ 移动 mv 12.py 14.py 重命名 tree 以树的方式进行显示 打包 tar -cvf(test.tar) *.py 解包 tar -xvf test.tar 压缩包 gzip test.tar ====> test.tar.gz gzip -d test.tar.gz 解压缩操作--->test.tar 打包解包 tar -zcvf test.tar.gz *.py 切换到超级管理员 sudo -s 美元号变为jin号 系统管理 查看日历 cal -2016 查看时间 date 查看进程信息:ps ps -aux 查看进行程序 ctrl +shift +z 打开新的命令窗口 kill -9 823 绝对杀死程序 需要管理员权限 reboot 重启 shutdown 关机 top 显示资源利用率的情况 df 检测磁盘空间 df -lh du -a -lh 查看当前目录的情况 查看网卡信息: ipconfig ping 120。1204.99 连接 第二天: 在Ubuntu下: 登陆用户: who 当前登陆用户: whoami 远程登陆电脑 先ping 192.168.21.76 然后 ssh admin@192.168.21.76 --y who 查看当前登陆的用户信息 whoami 查看我是谁 ssh 用户名@ip地址 exit 退出 用户管理: 1,sudo -s 2,添加新的账户:useradd laowang 3 passwd laowang 输入老王账号的密码, 4 exit 退出,回到一开始的用户,回到上一个用户 5 su - laowang -->切换到老王的账户 --> useradd loawang -m --->自动创建家目录 cat /etc/passwd 查看所有的用户名跟密码 删除用户 userdel laozhang ubutun sudu centerOS su root 查看组: groupadd aa groupmod Ubuntu下 删除添加组 groupadd www groupdel www 修改用户组 usermod -g aaa laosong aaa->变为老宋 查看用户所在组:groups python (adm sudo) 改组的功能: usermod -a -G adm laosong usermod -a -G sudo laosong 修改文件权限:chmod -rw--W-r- - 第一组表示文件拥有者权限 文件同组者权限可不可以执行)其他人_ Ubuntu下安装软件: 命令行安装:gedit /etc/apt/sources.list apt-get update 更新如那件 apt-get install sl 安装软件包 1 备份: cp /etc/apt/sources.list /etc/apt/sources.list.backup 2 修改 更新源 gedit /etc/apt/sources.list 3 sudo -s 切换到管理员 可以为 sudo 4 sudo apt-get update 让更新源生效 5 sudo apt-get install 软件的名字 6 删除软件 sudo apt-get remove package 删除包 sudo apt-cache search package 搜索软件包 sudo apt-cache show package 获取包信息 sudo apt-get install package --reinstall 重新安装包 sudo apt-get source package 下载软件的源码 ------等等 ftp服务器(常用服务器构建) FTP : File Transfer Protocol 文件传输协议 安装vsftpd服务器\ sudo apt-get install vsftpd 配置vsftpd.conf文件 sudo vi /etc/vsftpd.conf SSH 服务器搭建 sudo apt-get install openssh-server 远程登陆 远程拷贝文件 scp -r(是否上传文件夹) FileName 源文件 用户名@ip :home/python/Desktop 文件地址 从远端拷贝到本地: scp python@IP 本地路径 远程文件路径+文件名 拷贝到--> scp a.txt 128.128.323.23:/home/python/Desktop 编辑器vim Visual interface 简称 vim hello.py 1 打开vim后 默认进入一种状态->命令模式 输入小写i --》由命令模式转换到编辑模式 esc --》 退出编辑模式 末行模式:光标在最后 编码模式按下esc状态 --》输入: wq (保存退出) 等于 ---:x vim 常见命令: 上下左右移动hjkl 选中字母按下i 输入abc 会再i前面输入 选中字母按下a ,输入abc 会在字母后面输入abc 输入I/A 直接跳到行首,输入abc,会在行首出现abc 输入O/o 从命令模式进入编辑模式 G/g 快速定位到9, --》9G 此时并没有进入编辑模式 快速回到最后一行 G --gg 回到第一行 w 一个单词一个单词的调 w-word { 段落的跳 删除 dd 一行 5dd 指定数 向后删除5行 u 撤销 x 向后面进行删除 X 向前面进行删除 D 光标后面到行末全删除 D0 ctrl +r 反撤销 文本右移/左移 》 :q! 强制退出并不进行保存 yy张贴 p复制 : 张贴复制 p2 yy : 下两行进行复制张贴 dd 剪切/删除的功能 rH 替换 : 5,15s/main/MAIN/g 指定行数的替换 v 选中代码 }} 右缩进 : 12,23 >>> 整体缩进3次 行数开头,行数结尾 python 基础课程开始 使用地方: Web应用开发:后台开发 Django,TurboGears,web2py,Zope等可以轻松开发和管理复杂的web程序 操作系统管理,服务器运维的自动化脚本 python可以做翻墙软件 科学计算 NumPy,SciPy,Matplotlib 编写科学计算程序 桌面软件 PyQt,PySide,wxPython,PyGTK快速开发桌面应用程序 服务器软件 游戏 Python支持更多的特性和数据类型,Lua的功能简单,体积小, 构思实现,产品早起原型和迭代 YouTube,Google,Yahoo,NASA都在使用python 第一种方式: 直接在命令行中输入 print ("dsf") 运行 python helloworld.py 第二种方式 第三种方式: vi helloworld2.py chmod u+x helloworld.py 在python文件第一行 #!usr/bin/python --> 判断是否有可执行程序 注释:以#开头的就是注释 多行注释:‘’‘ 的沙发斯蒂芬 ’‘’ 让python 支持中文 在文件第一行加入 #encoding=utf-8 数据类型: Numbers数字 int 有符号整型 long 长整型,也可以代表八位和十六位进制 float 浮点型 complex 复数 boolean true,false String字符串 List列表 Tuple元祖 Dictionary字典 查看符号类型type(var) 查看系统关键字: import keyword 打印值: print("my english scrore is %/d"%scrore) print("my english scrore is %/d ,,,math scrore is %d"(score,mathScore)) \n 换行 数据类型转换: num= int("100) python3 input python2 raw_input input if age>10 and money >100 and handsome ==1: print("他是高富帅") else: print("呵呵") if 条件: 满足条件的时候做的事情 elif 条件2: 满足条件2的时候坐的事情 elif 条件3: 满足条件3的时候做的事情 if tiaojian: pass #进行占位 import random random.randin(3,5) 产生3,5的随机数 数据的显示问题: %-2d 不够两位也要占用两位,靠左边显示 9*9乘法表视频 for 变量 in XXX列表或者字符串等: 循环满足条件时执行的代码 else: 循环不满足条件时执行的代码 查找是否存在 if findName in nameList: print("找到了") else print("没有找到") 不存在 not in 返回字符在字符串中的下标:index names.index("a") 删除 del:根据下标索引进行删除 pop:删除最后一个元素 remove: 根据元素的值进行删除 列表的操作: 增 append() insert(下标,“a) insert(2,"acb") 删 del moveNames[0] 下标删除 movieNames.pop() 删除最后一个 movieNames.remove("喜洋洋") 按照元素的值进行删除 改 if "acv" in names: xx not in index() count() 自己编写代码来实现:在遍历的过程中宏进新年给判断,如果找到了那么久标记退出,如果么有找到标记,退出 查 列表的嵌套: 列表里面还有列表 [['北京大学','清华大学'],[‘南开大学’,'天津大学'],['山东大学']] for temp in schoolNames: print(temp) for temp2 in temp: print(temp2) print("----------") 元祖只要不是修改都可以进行操作。相对于列表来说。 全局变量 如果需要进行全局修改,需要在修改之前设置 global 全局变量在方法中都可以进行调用。 break 退出循环 python的引用: 使用id a = 100 id(a) --->得到一个地址的引用 魔法方法def __str__(self): return "dsfsadf" 类方法: @classmethod def setNewAddress(self): pass 类对象可以直接调用类属性,也可以直接调用类方法 但是类对象不允许调用 实例属性,并也不允许调用实例方法 如果是一个实例对象 它可以获取实例属性和类属性的值,但是只能修改实例属性,不能修改类属性 它还可以调用实例方法和类方法。 异常的处理: try: 进行的操作代码 except (IOError,NameError) as errorMsg: 发生异常后的错误代码 print(errorMsg) else: 没有出现异常 finally: 不管有没有异常,都会执行 try: f = file(test.txt) while True: line = f.readline() .... finally: f.close() print("关闭文件") raise 引发一个自定义的异常类 raise ShortInputException(len(s),3) // 自定义的异常 python常用三方api PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。 由于PIL仅支持到Python 2.7,加上年久失修,于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用Pillow。 飞机大战 通过练习,将对象思想结合到一起 from PIL import Image # 打开一个jpg图像文件,注意是当前路径: im = Image.open('test.jpg') # 获得图像尺寸: w, h = im.size print('Original image size: %sx%s' % (w, h)) # 缩放到50%: im.thumbnail((w//2, h//2)) print('Resize image to: %sx%s' % (w//2, h//2)) # 把缩放后的图像用jpeg格式保存: im.save('thumbnail.jpg', 'jpeg') PIL的ImageDraw提供了一系列绘图方法,让我们可以直接绘图。比如要生成字母验证码图片 from PIL import Image, ImageDraw, ImageFont, ImageFilter import random # 随机字母: def rndChar(): return chr(random.randint(65, 90)) # 随机颜色1: def rndColor(): return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255)) # 随机颜色2: def rndColor2(): return (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127)) # 240 x 60: width = 60 * 4 height = 60 image = Image.new('RGB', (width, height), (255, 255, 255)) # 创建Font对象: font = ImageFont.truetype('Arial.ttf', 36) # 创建Draw对象: draw = ImageDraw.Draw(image) # 填充每个像素: for x in range(width): for y in range(height): draw.point((x, y), fill=rndColor()) # 输出文字: for t in range(4): draw.text((60 * t + 10, 10), rndChar(), font=font, fill=rndColor2()) # 模糊: image = image.filter(ImageFilter.BLUR) image.save('code.jpg', 'jpeg')
相关文章推荐
- python入门笔记--基础语法
- 【零基础入门学习Python笔记001】我和Poyhon的第一次亲密接触:课后测试集答案
- [Python入门及进阶笔记]Python-基础-简介/入门
- Python学习入门笔记-基础知识
- Python零基础入门笔记
- 零基础入门学习Python学习笔记第七讲【字符串格式化+转义字符】
- 【零基础入门学习Python笔记012】一个打了激素的数组3
- python基础入门学习笔记(3)
- 零基础入门学习Python学习笔记第四讲【短路逻辑】
- 【零基础入门学习Python笔记014】字符串:各种奇葩的内置方法
- python基础入门学习笔记(Python环境搭建)
- 【零基础入门学习Python笔记003】插曲之变量和字符串|课习题答案
- Python学习笔记-入门基础补充
- 零基础入门Python学习笔记3
- 零基础入门学习Python学习笔记第八讲【字符串】
- 【零基础入门学习Python笔记012】一个打了激素的数组3
- [Python入门及进阶笔记]Python-基础-函数小结
- [Python入门及进阶笔记]Python-基础-列表及列表解析小结
- [Python入门及进阶笔记]Python-基础-字符串小结
- [Python入门及进阶笔记]Python-基础-字典小结