PythonDay1 Python基础学习

一、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安装。

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 = 'cheng'
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_cheng = 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_cheng = 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")
登录接口代码,下面是流程图
 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()

 流程图1-1

诸君共勉:

    合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。-------《老子》

    为大家带来一点福利。阿里云最近开始发放代金券了,新老用户均可免费获取,新注册用户可以获得1000元代金券,老用户可以获得270元代金券,建议大家都领取一份,反正是免费领的,说不定以后需要呢? 阿里云代金券
原文地址:https://www.cnblogs.com/cheng95/p/5702963.html