Python学习笔记 1

来源:互联网 发布:ktv网络维护 编辑:程序博客网 时间:2024/05/16 18:10

1. 学习笔记:

1.1 Python版本的选择

目前Python存在两种版本2.x和3.x,这两种版本互不兼容(可以通过做一些版本转化使得代码在两个版本中都正常运行)。应用最多的是2.x版本,因为毕竟发展了那么久,积累了了一定的用户量,虽然说3.x版本目前还没有大范围的使用或者说是替代2.x版本,但因为它比2.x版本有了性能上的提升以及更好的规范,而且功能模块更多,所以在不久的将来3.x势必是要盖过2.x的,所以从长远来讲现在学习Python还是以3.x作为入口。

1.2.raw_input和input以及sys.stdin.readline( )的区别?

sys.stdin.readline( )会将标准输入全部获取,包括末尾的’\n’,因此用len计算长度时是把换行符’\n’算进去了的,获取的输入长度比正常值加1,但是raw_input( )获取输入时返回的结果是不包含末尾的换行符’\n’的。因此如果在平时使用sys.stdin.readline( )获取输入的话,不要忘了去掉末尾的换行符,可以用strip( )函数去掉(sys.stdin.readline( ).strip(‘\n’)),这样处理一下就行了。raw_input接收的为str类型的字符串,input接收的是int型的,而且在Python3.x版本中貌似没有raw_input的用法

1.3 python格式化输出(包含变量)的方法有哪些?并举例列出?

print "name:{name} age {age}" .format{age=16,name="hello"}print "name:{} age :{}" .format{"hello",16}print "name:%s age :%d" .format{"hello",16}print "name:%s , age:%d" %(name,age)

1.4 关于pycharm的安装以及使用:

安装:
首先下载好必须的依赖包放到一个目录中去,并且配置好你本机对应系统的yum源,然后在依赖包所在目录中执行以下命令即可:

yum install * -y

然后在安装目录下的bin目录中执行pycharm.sh程序来进行一次初始的环境配置即可。
常用快捷键:

1、编辑(Editing)Ctrl + Space    基本的代码完成(类、方法、属性)Ctrl + Alt + Space  快速导入任意类Ctrl + Shift + Enter    语句完成Ctrl + P    参数信息(在方法中调用参数)Ctrl + Q    快速查看文档F1   外部文档Shift + F1    外部文档,进入web文档主页Ctrl + Shift + Z --> Redo 重做Ctrl + 悬浮/单击鼠标左键    简介/进入代码定义Ctrl + F1    显示错误描述或警告信息Alt + Insert    自动生成代码Ctrl + O    重新方法Ctrl + Alt + T    选中Ctrl + /    行注释/取消行注释Ctrl + Shift + /    块注释Ctrl + W    选中增加的代码块Ctrl + Shift + W    回到之前状态Ctrl + Shift + ]/[     选定代码块结束、开始Alt + Enter    快速修正Ctrl + Alt + L     代码格式化Ctrl + Alt + O    优化导入Ctrl + Alt + I    自动缩进Tab / Shift + Tab  缩进、不缩进当前行Ctrl+X/Shift+Delete    剪切当前行或选定的代码块到剪贴板Ctrl+C/Ctrl+Insert    复制当前行或选定的代码块到剪贴板Ctrl+V/Shift+Insert    从剪贴板粘贴Ctrl + Shift + V    从最近的缓冲区粘贴Ctrl + D  复制选定的区域或行Ctrl + Y    删除选定的行Ctrl + Shift + J  添加智能线Ctrl + Enter   智能线切割Shift + Enter    另起一行Ctrl + Shift + U  在选定的区域或代码块间切换Ctrl + Delete   删除到字符结束Ctrl + Backspace   删除到字符开始Ctrl + Numpad+/-   展开/折叠代码块(当前位置的:函数,注释等)Ctrl + shift + Numpad+/-   展开/折叠所有代码块Ctrl + F4   关闭运行的选项卡 2、查找/替换(Search/Replace)F3   下一个Shift + F3   前一个Ctrl + R   替换Ctrl + Shift + F  或者连续2次敲击shift   全局查找{可以在整个项目中查找某个字符串什么的,如查找某个函数名字符串看之前是怎么使用这个函数的}Ctrl + Shift + R   全局替换 3、运行(Running)Alt + Shift + F10   运行模式配置Alt + Shift + F9    调试模式配置Shift + F10    运行Shift + F9   调试Ctrl + Shift + F10   运行编辑器配置Ctrl + Alt + R   运行manage.py任务 4、调试(Debugging)F8   跳过F7   进入Shift + F8   退出Alt + F9    运行游标Alt + F8    验证表达式Ctrl + Alt + F8   快速验证表达式F9    恢复程序Ctrl + F8   断点开关Ctrl + Shift + F8   查看断点 5、导航(Navigation)Ctrl + N    跳转到类Ctrl + Shift + N    跳转到符号Alt + Right/Left    跳转到下一个、前一个编辑的选项卡(代码文件)Alt + Up/Down跳转到上一个、下一个方法F12    回到先前的工具窗口Esc    从工具窗口回到编辑窗口Shift + Esc   隐藏运行的、最近运行的窗口Ctrl + Shift + F4   关闭主动运行的选项卡Ctrl + G    查看当前行号、字符号Ctrl + E   当前文件弹出,打开最近使用的文件列表Ctrl+Alt+Left/Right   后退、前进Ctrl+Shift+Backspace    导航到最近编辑区域 {差不多就是返回上次编辑的位置}Alt + F1   查找当前文件或标识Ctrl+B / Ctrl+Click    跳转到声明Ctrl + Alt + B    跳转到实现Ctrl + Shift + I查看快速定义Ctrl + Shift + B跳转到类型声明Ctrl + U跳转到父方法、父类Ctrl + ]/[跳转到代码块结束、开始Ctrl + F12弹出文件结构Ctrl + H类型层次结构Ctrl + Shift + H方法层次结构Ctrl + Alt + H调用层次结构F2 / Shift + F2下一条、前一条高亮的错误F4 / Ctrl + Enter编辑资源、查看资源Alt + Home显示导航条F11书签开关Ctrl + Shift + F11书签助记开关Ctrl + #[0-9]跳转到标识的书签Shift + F11显示书签 6、搜索相关(Usage Search)Alt + F7/Ctrl + F7文件中查询用法Ctrl + Shift + F7文件中用法高亮显示Ctrl + Alt + F7显示用法 7、重构(Refactoring)F5复制F6剪切Alt + Delete安全删除Shift + F6重命名Ctrl + F6更改签名Ctrl + Alt + N内联Ctrl + Alt + M提取方法Ctrl + Alt + V提取属性Ctrl + Alt + F提取字段Ctrl + Alt + C提取常量Ctrl + Alt + P提取参数 8、控制VCS/Local HistoryCtrl + K提交项目Ctrl + T更新项目Alt + Shift + C查看最近的变化Alt + BackQuote(’)VCS快速弹出 9、模版(Live Templates)Ctrl + Alt + J当前行使用模版Ctrl +J插入模版 10、基本(General)Alt + #[0-9]打开相应的工具窗口Ctrl + Alt + Y同步Ctrl + Shift + F12最大化编辑开关Alt + Shift + F添加到最喜欢Alt + Shift + I根据配置检查当前文件Ctrl + BackQuote(’)快速切换当前计划Ctrl + Alt + S 打开设置页Ctrl + Shift + A查找编辑器里所有的动作Ctrl + Tab在窗口间进行切换 

为脚本自动添加注释:
Ctrl+Alt+s打开配置界面,但后按照下图选择对应条目输入以下内容,也可以自定义内容

#!/usr/bin/env python#coding:utf-8'''file:${NAME}.pydate:${DATE} ${TIME}author:lockeyemail:lockey@123.comdesc:'''

这里写图片描述

2. 编程练习:

练习1. 模拟用户登陆:

1). 假设系统中的用户名"root",密码为"westos";2). 如果用户输入用户名和密码均正确显示"login ok"    如果用户名错误,显示"user is not exist"    如果密码错误,显示"password is no ok"3). 只有三次登陆机会,超过三次,显示"count is bigger than 3"

程序示例(运行环境win7 x86_64 eclipse):

```#encoding=utf-8import sysusernameOk = Falsefor i in range(1,4):    if ( not usernameOk ):        username = input('Please input username: ')        if ( username != 'root' ):            print('User is not exist!')        else:            usernameOk = True    if ( usernameOk ):        passwd=input('Please input password: ')        if( passwd == 'westos' ):            print('login ok!')            sys.exit()        else:            print('password is not ok!')print('count is bigger than 3')```

运行结果:
这里写图片描述

练习2. 编写乘法表
代码示例(运行环境win7 x86_64 eclipse):

```#encoding=utf-8def multiple_table():    for i in range(1,10):        row=' '        for j in range(1,i+1):            row += "%d*%d=%s " %(j,i,i*j)        print(row)multiple_table()```

运行结果:
这里写图片描述
3. 输入一组主机信息,根据主机的使用年限,大于10年直接输出警告:该服务器使用年限太久!,小于10年则打印出所有录入信息

def computerInfo():    print 'PC information record!'    hostname = raw_input('Hostname:')    ip = raw_input('IP:')    used_year = raw_input('Used_years:')    CPU = raw_input('CPU:')    memory = raw_input('Memory:')    manager = raw_input('Manager:')    print hostname,ip,used_year,CPU,memory,manager    if (int(used_year) <= 10):        print """         Computer infomation are as following:            Hostname:{}            IP:{}            Used_years:{}            CPU:{}            Memory:{}            Manager:{}        """.format(hostname,ip,used_year,CPU,memory,manager)    else:        print '\033[1;31;23m该服务器使用年限太久! \033[0m'

3. 本节学习思维导图

这里写图片描述