一、Python3.5.X安装
1.Windows
Windows上找度娘搜索“Python for windows下载”就OK了,安装的时候可以勾选设置环境变量,也可以安装完手动设置,这样在cmd中可以直接输入命令使用。
2.Linux
Linux上默认是有Python的,也看你是怎么安装的哈。centos7上面默认是python2.7.x,可以在命令行输入python -V显示版本。所以不用再担心Python的依赖包问题,如果有这个问题,度娘可以解决,在这就不说了,直接进入下载Python3.5.x安装。
1
2
3
4
5
6
7
8
9
10
|
wget https: //www .python.org /ftp/python/3 .5.2 /Python-3 .5.2.tgz #可以先打前面的网页上去看看,选好了要安装的包再下载。 tar -zxf Python-3.5.2.tgz cd Python-3.5.2 . /configure --prefix= /usr/local -- enable -shared make make install ln –s /usr/local/bin/python3 /usr/bin/python3 /usr/local/lib >> /etc/ld .so.conf.d /local .conf #运行前配置库,安装完发现不能用,打了这两条命令才好,下面那条是刷新动态库。 ldconfig python -V(python3 --version) |
二、学习仪式--Hello world!!!
1 print(“Hello world!!!”)#这是一个学习语言的仪式O(∩_∩)O哈哈~
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 print(“你好,世界!!!”)
第一行是指定解释器,不指出解释器的话./hello.py是会出现错误的,需要以python hello.py执行。#!/usr/bin/python 和 #!/usr/bin/env python 的区别是:前者相当于写死了python解释器的位置,后者会去环境变量下找python解释器,也就是说#!/usr/bin/python只会找/use/bin下的python解释器,而后一个会找所有环境变量中的python。如果说/usr/bin/下没有python,env有/usr/bin/ 和 /usr/local/bin/ ,那么#!/usr/bin/env python就会使用/usr/local/bin/python解释器,而#!/usr/bin/python找不到解释器。
如果是Python2不打第二行会出现ASCII码的错误,要声明使用utf-8编码。
三、变量及变量赋值
1.变量的命名规范
- 驼峰式
驼峰式:ConsumerUserName 就是每个单词的首字母大写
- 下标式
下标式: consumer_user_name 就是每个单词之间都用下划线隔开
- 不能使用的变量(python预留的关键字)
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for','from','global', 'if','import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 设定一个不想被更改的变量,我们可以是用全大写,比如:PIE = 3.141592653
2.变量的赋值
当创建一个变量的时候并赋予这个变量一个值,计算机做了如下的操作:开辟一块内存空间cheng,并把Name变量指向这个内存空间,当把这个Name变量赋值给另一个变量Name2时候,是告诉这个Name2变量指向cheng的内存空间,而不是指向Name,所以当Name发生改变,Name2的值不发生变化。
>>> Name = 'cheng' #先在内存中开辟一块空间并把变量指向Name >>> id(Name) #查看一下这块空间的内存地址是多少 51403272 >>> Name2 = Name #我们把变量Name2也指向Name这个变量 >>> id(Name2) 51403272 >>> Name = 'er' #开辟第二块空间,并把Name变量指向新的内存空间 >>> id(Name) #查看Name指向的内存地址 51335216 >>> id(Name2) #在查看Name2指向的内存地址 51403272
四、输入输出
name = input("name:") #输入 #2.x里面的raw_input在3.x已经不用了,3.x默认输入时字符格式 print(type(name)) #输出name的类型 age = int(input("age:") ) #强制转换为int类型 print(type(age)) job = input("job:") salary = input("salary:") #占位符方式格式化输出 info = ''' -------- info of %s ----- Name:%s Age:%d Job:%s Salary:%s ''' % (name,name,age,job,salary) #指定变量名称与值的格式化输出 info2 = ''' -------- info2 of {_name} ----- Name:{_name} Age:{_age} Job:{_job} Salary:{_salary} '''.format(_name=name, _age=age, _job=job, _salary=salary) #指定变量位置的格式化输出 info3 = ''' -------- info3 of {0} ----- Name:{0} Age:{1} Job:{2} Salary:{3} '''.format(name,age,job,salary) print(info,info2,info3) '''这里是注释的输出结果,多行注释就是这样,单行是“#”号 name:root <class 'str'> age:23 <class 'int'> job:IT salary:6666666 -------- info of root ----- Name:root Age:23 Job:IT Salary:6666666 -------- info2 of root ----- Name:root Age:23 Job:IT Salary:6666666 -------- info3 of root ----- Name:root Age:23 Job:IT Salary:6666666 '''
import getpass passwd = getpass.getpass('please input your passwd:') print (passwd) '''这种输入的密码是隐藏的,运行结果如下: C:\Users\CHENG\PycharmProjects\untitled>python b.py please input your passwd: 123 '''
五、流程控制
python中使用强制缩进来区分流程控制,如果本身是父级的语句一定要顶格写。
1、if、if ... else、if ... elif ... else判断
2、while循环
3、for循环
用下述代码来记录上述三种流程控制结构:
user = 'tiger' passwd = '123' user_input = input("Your username:") passwd_input = input("Your password:") if user_input == user and passwd_input == passwd: print ("Welcome %s login to our system!" %user_input) elif user_input == 'guest': print ("Welcome %s login to our system!,but you only have read_only access,enjoy!" %user_input) else: print ("Incalid username!Byebye!")
age_of_oldboy = 23 count = 0 while count <3: guess_age = int(input("guess age:") ) if guess_age == age_of_oldboy : print("yes, you got it. ") break elif guess_age > age_of_oldboy: print("think smaller...") else: print("think bigger!") count +=1 else: print("you have tried too many times..fuck off")
age_of_oldboy = 23 for i in range(3): guess_age = int(input("guess age:") ) if guess_age == age_of_oldboy : print("yes, you got it. ") break elif guess_age > age_of_oldboy: print("think smaller...") else: print("think bigger!") else: print("you have tried too many times..fuck off")
![复制代码](https://common.cnblogs.com/images/copycode.gif)
1 import random 2 user=['root','administrator','others'] 3 passwd=['1','2','o'] 4 user_input=input("请输入您的用户名:") 5 #判断用户是否存在或者是否已经锁定 6 f=open('deny.txt','a') 7 d=open('deny.txt').read() 8 if user_input in user: 9 print("欢迎%s使用登录接口" %user_input) 10 if user_input in d: 11 print("然而%s用户已锁定,正在退出。。。" %user_input) 12 exit() 13 else: 14 print("%s用户不存在,正在退出。。。" %user_input) 15 exit() 16 #判断用户密码是否正确,循环三次错误锁定 17 i=0 18 while i<3: 19 passwd_input=input("请输入您的密码:") 20 if passwd_input == passwd[user.index(user_input)]: 21 print("登录成功,欢迎") 22 break 23 else: 24 print("输入错误") 25 i+=1 26 else: 27 print("输错次数过多,用户名已锁定") 28 # f=open('deny.txt','a') 29 f.write(user_input) 30 f.write(',') 31 f.close()