python学习
python学习第一天笔记
第一节课,alex老师讲完他的人生故事后,大家轮流做自我介绍,说实话,不来不知道,一来吓一跳,大牛超多。废话不多说了,直接进主题吧。
一、python介绍
python的由来
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。没事干就开发了一门流弊的语言,求抱大腿。
python的应用领域
云计算(openstack),自动化(saltstack,ansible),爬虫,大数据分析等等,只要你想不到,没有python做不到。
python在一些公司的应用
国外的有谷歌、YouTube、Instagram;国内的有豆瓣、知乎、春雨医生等。可以这么说,只要是互联网企业,几乎都有python的影子,平常写个python脚本分析数据或者导出excel表格的需求真是太常见了,所以说学好python很重要,用alex老师讲的话说,python是趋势,不会python的运维即将淘汰。
Python语言分析
编程语言分为编译型和解释型,静态语言和动态语言,强类型定义语言和弱类型定义语言。
Python的编译型
负责翻译的程序来对源代码进行转换,生成相应的可执行代码,又称为编译,而负责编译的程序自然就称为编译器。
Python解释型
在程序执行的时候,一条一条的解释成机器语言给计算机来执行,就好比就国家领导人出席某个国际会议,旁边有位翻译一条一条翻译给他。这样的话,运行速度是不如编译后的程序运行的快的。
Python的优点和缺点
先说优点,语法容易懂,第三方库非常多,移植性好(可以运行在很多平台上)。
缺点,个人感受是对缩进很严格,其他方面什么速度慢,代码无法加密,线程不能利用多CPU,我还没有研究到那么深的地步。
二、python安装部署
Linux系统都自带了python,不过版本比较老。因为学习是用3.5的版本,方法如下。
1、进python官网下载3.5的版本
2、解压并进入源码文件cd python3.5.2
3、编译安装三部曲
./configure
make
make install
4、查看版本
/usr/local/bin/python3.5 -V
Python 3.5.2
5、修改默认python版本
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/bin/python3.5 /usr/bin/python
6、为了防止yum执行报错,需要修改yum使用的python版本
vi /usr/bin/yum,然后把头文件#!/usr/bin/python更改为#!/usr/bin/python2.6即可
Windows安装也简单,步骤如下:
1、下载python3.5 for windows的安装包
2、默认安装
3、配置环境变量
右键计算机-->属性-->高级系统设置-->环境变量-->找到变量名为Path的一行双击-->Python安装目录追加到变量值中。用分号;分割
4、最好重启下电脑,在命令行输入python查看是否安装正确。
三、走进python世界
学语言一开始都得来个hello world,话说我已经精通各种语言的hello world了。
#!/usr/bin/env python #就是声明程序是用python写的。
print ("hello world!") #python3的写法
print "hello world" #python2的写法,后面不再对比2和3的区别
Python的注释
单行注释
# 被注释的内容
多行注释
'''
注释的内容
'''
Python变量
变量用来存储信息,在后面可以被程序调用,并且标识名称和类型。主要的功能,命名,并且存储至内存。形如:MYAGE = 18 ,该行代码声明了一个变量,变量名为:MYAGE,变量的值为:”18”,变量的作用就是代指内存里某个地址中保存的内容。
变量定义规则
一句话概括,第一个字符不能是数字,变量名只能是字母、数字或下划线的任意组合,也不能把关键字声明为变量,如and,as,del while等。
变量取名习惯
最好取一个一眼就知道是干嘛的变量名,这个习惯是必须要养成的。
Python字符编码
说实话,老师讲的听得我晕晕乎乎的,个人觉得记住在代码里告诉python解析器,用什么编码来执行源代码即可,形如
#!/usr/bin/env python
#coding=utf8
python输入和输出
输入
#!/usr/bin/env python
#coding=utf8
Name = input("请输入你的名字:")
输出
#!/usr/bin/env python
#coding=utf8
Name = input("name:")
Age = int(input("age:"))
Salary = input("salary:")
Info = '''
-------info of %s -------
Name:%s
Age:%d
Salary:%s
''' % (Name,Age,Salary)
print(info)
Python循环
我经常用到的是for和while
For循环举例
Animals = ["dog","cat","monkey"]
for name in Animals:
print (name)
While循环举例
while count < 3:
user = input("Please input your username:")
passwd = input("please input your password:")
if user== text[0].strip() and passwd == text[1].strip(): #strip去除空格
print ("welcome")
break #认证成功退出循环
else:
print ("username or passwd is not right,please check it")
count += 1
else:
print("Your account is locked")
附上作业需求和代码
- 输入用户名密码
- 认证成功后显示欢迎信息
- 输错三次后锁定
代码如下:
#!/usr/bin/env python
#coding=utf8
#author by liuhuihuang-2016-9-26
'''
需求
输入用户名密码
认证成功后显示欢迎信息
输错三次后锁定
Information.txt文件内容为
parktrick
123456
'''
#import getpass
with open("E:\\Information.txt") as f: #使用with写法可不用写f.close(),以免忘记关闭文件
text = f.readlines()
count = 0
while count < 3:
user = input("Please input your username:")
passwd = input("please input your password:")
if user== text[0].strip() and passwd == text[1].strip(): #strip去除空格
print ("welcome")
break #认证成功退出循环
else:
print ("username or passwd is not right,please check it")
count += 1
else:
print("Your account is locked")