python 入门

注:主用python 3.5

1. python的第一句代码:hello word!

    两种方式输入程序:

  第一种:

  • 在window下;运行cmd命令(ctrl + r;然乎输入cmd--回车);打开终端
  • 输入python

    注意:这步有要求;就是你安装了python;并且正确的配置了环境变量

       此时终端的显示

        

       出现 ">>>" 表示已经进入了python模式下

  • 次数输入
    print("hello word!")
    

    回车----此时终端会在接下来的位置打印 hello word!

    注意:要出现上面的结果才算成功 

   第二种:(以D盘为例)

  • D盘下面创建 hello.py文件;重新打开终端输入
    python D:\hello.py
    

    回车----在控制器上显示的效果和上面的效果时一样的。

  分析:第二种方式:是直接对文件进行操作的;输的是文件的据对路径;前面的python就是明确的指出是脚本通过

     python解释器来执行。

 问题:如果要像类似于shell脚本一样执行python脚本,例如:./hello.py

    那么我们就的在hello.py文件头部执行解释器

    

    这样我们即可这样执行文件: ./hello.py

 注意:这个在linux下有用在window下没用。

    同时在linux执行前要给予 hello.py,执行权限 chmod 755 hello.py

2.编码

  • 2.几版本默认的编码是ASCII码;按照我们的格式;想输出必须转码
  • # -*- coding:utf-8 -*-:告诉解释器用上面编码来执行代码

总结:所以标准格式

  • 2.几版本的
  • 3.及版本的

3.注释

  • #:表示单行注释;如 # 被注释的内容
  • ''' ''' 或者""" """:表示多行注释;如''' 被注释的内容 '''

4.模块

python种有大连的模块。从而是的开发python城西非常简洁;类库(模块)有三种:

  • python内部提供的
  • 开源的模块
  • 字节开发的

例如:python内部提供一个sys 的模块,其中的sys.argv用来获取执行python脚本是传入的参数

#!/usr/bin/env python
# -*- coding:utf-8 -*- #3.几版本可以不写

import sys

print(sys.argv)

5.pyc文件

执行python代码的时候;如果导入其他的.py文件;那么,执行过程会自动生成一个与引入文件同名的.pyc文件,该文件就是python解释器编译之后产生的字节码文件。

分析:解释器在执行的时候;会先去找这个.pyc文件;没有的话就找.py文件然后编译;怎么证明那?

   当编译完后;我们删掉.py源文件然后再同样执行代码;一样能运行;照样不会报错。如果2个都删除则会报错

   既然 .pyc是通过 .py文件编译的;那么我们可以通过反编译也可以由.pyc文件得到.py文件的代码。

6.变量

  1. 声明变量:
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    name = "nashaji"

    分析:name为变量名;nashaji为值;运行过程;是将值 nashji 赋给变量名 name

    作用:昵称,其指代内存里某个地址中保存的内容

       通俗讲;变量名只是个链接;这个链接指向就是内存中某个地址;这个地址对应相应的内容

       

   2. 变量定义的规则:

  • 变量名只能是字母,数字,或者下划线的任意组合
  • 同时注意;变量名的第一个字符不能是数字
  • 同时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']

   3. 变量的赋值

#!/usr/bin/env python
# -*- coding:utf-8 -*-

name1 = "wupeiqi"
name2 = "alex"

#!/usr/bin/env python
# -*- coding:utf-8 -*-

name1 = "wupeiqi"
name2 = name1

总结:可以看出变量名;只是指向内存中的一个地址;变量名只是一个指代。

7.获取用户的输入

  • 2.几版本的是raw_input()
#!/usr/bin/env python
# -*-coding:utf-8 -*-

# 这里提示用户输入用户名;同时将输入的值赋值给name
name = raw_input("请输入用户名:")
# 这里提示用户输入密码;同时赋值给pwd
pwd = raw_input("请输入密码:")

print name

print pwd
  • 3.版本的
#!/usr/bin/env python

# 这里提示用户输入用户名;同时将输入的值赋值给name
name = input("请输入用户名:")
# 这里提示用户输入密码;同时赋值给pwd
pwd = input("请输入密码:")

print(name)

print(pwd)

分析:我们发现我们输入的密码可以看见的;和我们经常输的密码不一样;一般密码是不能被看见的

要想解决这问题;python给我们准备了给模块;我们引入既可以使用;getpass 模块

#!/usr/bin/env pthon
# -*-coding:utf-8 -*-

import getpass

name = input("请输入用户名:")
pwd = getpass.getpass("请输入密码:")

print(name)
print(pwd)

8.流程控制

  •  if语句:判断语句

      语法:

     if 判断条件(结果只有真或者假):

         后面执行代码    

#!/usr/bin/env python
# -*- coding:utf-8 -*-
if 1 == 1:
    print(1)
  • if...else:通俗理解;如果真就这样;不然就那样;真执行if后面的代码;否则执行else后面的代码

 

#!/usr/bin/env python
# -*- coding:utf-8 -*-

if 1 == 1:
    print("我是成立执行的!")
else:
    print("我是不成立执行的!")
  • if...elif...elif:多条件判断;
    #!/sur/bin/env python
    # -*- coding:utf-8 -*-
    
    num = input("请你输入数字:")
    
    if num = "1":
        print("第一位")
    elif num = "2":
        print("第二位")
    elif num = "3":
        print("第三位")
    ...
    else:
        print("最后位")

9.while 循环

  • 基本循环
  • while 条件:
         
        # 循环体
     
    # 如果条件为真,那么循环体则执行
    # 如果条件为假,那么循环体不执行
  • break:执行时马上跳出循环体;
    while True:
        if 条件:
            break
        if 条件:
            break
        if 条件:
            break
        print("OK!")
    
    # 这是一个循环;在循环体中;如果条件都为False;代码将无限打印 OK!
    # 如果循环体中的条件任意一个为True;循环马上终止;意思是这个while
      循环会马上结束
  • continue:跳过;会退出当前的循环;直接进入下一次循环!
  • while True:
        print("Yes!")
        continue
        print("OK!")
    
    # 这是一个循环;结果会无限的打印Yes!;
    # 运行过程:循环开始--打印Yes!--跳出本次循环(跳过print("OK!"));
    #    重新进入新的循环:循环开始--打印Yes!--跳出本次循环
    #    (跳过print("OK!"));....这样重复;多疑会一直打印Yes!

 总结:注意break和contnue的区别:break终止直接包裹这个break的循环;continue只是结束当前次的循环;

    当continue执行时它后面不管有多少代码;都不会执行

while True:
    print("A")
    while True:
        num = input("shuru:")
        if num ==1:
            break
        else:
            print("B")

运行的时候当我输入 1 的时候 B 始终更不会被打印;然后直接包裹break的循环终止;进入外围循环的下一次

上面的代码break只能终止里面这层循环;对外面的循环不影响

注意:不能弄混淆了!

练习题

1、使用while循环输入 1 2 3 4 5 6     8 9 10

2、求1-100的所有数的和

3、输出 1-100 内的所有奇数

4、输出 1-100 内的所有偶数

5、求1-2+3-4+5 ... 99的所有数的和

6、用户登陆(三次机会重试)

    

 

  

posted on 2016-10-05 15:51  jayafs  阅读(320)  评论(0)    收藏  举报

导航