• python学习 第一天


    一、第一句Python代码

    在/home/dev/目录下创建hello/py文件,内容如下:

     

     print "hello world"

    执行hello.py文件,即:python  /home/dev/hello.py

    二、解释器

    上一步中执行python /home/dev/hello.py时,明确指出hello.py脚本是由python解释器来执行

    如果想要类似于执行shell脚本一样执行python脚本,例如:.hello.py, 那么久需要在hello.py文件的头部指定解释器

    如:

    在linux中   可在文件h.py开头加上#!/usr/bin/env python  

      执行前需要给与h.py执行权限chmod 755 h.py

      执行./h.py

    三、内容编码

    python 解释器在加载.py文件中的代码时时,会对内容进行编码(默认AscII)

    ASCII unicode  utf-8

    # -*- coding:utf-8 -*-

    #解码,需要指定原来是什么编码

    实例

     1 #-*- coding:utf-8 -*-
     2 
     3 #py2
     4 
     5 temp="李杰" #utf-8
     6 
     7 #解码,需要指定原来是什么编码
     8 
     9 temp_unicode=temp.decode('utf-8')
    10 
    11 #编码,需要制定要编成什么编码
    12 
    13 temp_gdk=temp_unide.encode("gdk")
    14 
    15  
    16 
    17 print(temp_gbk)

    #py3

     1 #py3,自动装换 utf-8  unicode  gbk
     2 
     3 #py3,移除了Python的Unicode类型
     4 
     5 temp=“李杰”
     6 
     7 #自动装换 utf-8  unicode  gdk
     8 
     9 temp_gbk=temp.encode('gbk')
    10 
    11  
    12 
    13 print(temp_gbk)

    #windows终端需要gbk

    小结

    1、unicod,gbk,utf-8

    2、对于python27

        utf-8>gbk

        utf-8解码Unicode编码gbk

      py3.5

        utf-8编码成gbk

    3、window上输出

        utf-8 > unicode

    四、注释

         #无效内容,只作为注释用

      “”“多行注释“”“

    五、

    写各种各样的功能

    import lib

    #找到lib.py,将文件内容替换  import  lib

    #1、连接数据库

    #2、数据增删改查

    六、密码隐藏

    输入密码是,如果想要不可见,需要利用getpass模块中的getpass 方法,即

    import getpass

    #将用户输入的内容赋值给name变量

    pwd=getpass.getpass("请输入密码:")

    例子

     1 #!/usr/bin/env python 
     2 #-*- coding:utf-8 -*-
     3 
     4 #import lib
     5 import getpass
     6 
     7 #print('index')
     8 i1 = raw_input("username:")
     9 #i2 = raw_input("password:")
    10 i2=getpass.getpass("password:")
    11 
    12 print(i1)
    13 print(i2)

    七、python运行的基本流程

    1、创建 XXX.py 文件
      ps:不要有中文路径
    2、写代码
      a、头部两行
      b、写功能代码

      #写功能代码的规则
    3、执行代码
      a、打开终端
      功能键+R
      b、python代码文件的路径

    八、条件

      if 条件,elif 条件,else

    九、流程控制和缩进

    #raw_input()等待用户输入

    需求一、用户登录验证

     1 #!/usr/bin/env/ python 
     2 
     3 # -*- coding: encoding -*-
     4 
     5 #提示输入用户名和密码
     6 
     7 #验证用户名和密码
     8 
     9 #验证用户名和密码
    10 
    11   #如果错误,则输出用户名和密码错误
    12 
    13   #如果成功,则输出 欢迎,XXX
    14 
    15 import getpass
    16 
    17 name = raw_input('请输入用户名:')
    18 
    19 pwd = getpass.getpass('请输入密码:')

    需求二、根据用户输入内容输出其权限

     1 #根据用户输入内容打印其权限
     2 
     3 #alex-->超级管理员
     4 
     5 #eric-->普通管理员
     6 
     7 #tony,rain-->业务主管
     8 
     9 #其他-->普通用户
    10 
    11  
    12 
    13 name=raw_input("请输入用户名:”)
    14 
    15 if name == "alex":
    16 
    17   print "超级管理员"
    18 
    19 elif name=="eric":
    20 
    21   print "普通管理员”
    22 
    23 elif name =="tony" or name=="rain":
    24 
    25   print "业务主管"
    26 
    27 else:
    28 
    29   print "普通用户"

    十、while循环

    1、基本循环

     1 #!/usr/bin/env python 
     2 #-*- coding:utf-8 -*-
     3 import time
     4 kaishi=1
     5 while True:
     6   print(kaishi)
     7   if kaishi == 10:
     8     break
     9   kaishi =kaishi + 1
    10   time.sleep(1)
    11 
    12 print('end')

    2、break关键字

      用于跳出所有循环,并且break下面的代码,将不再执行

    3、continue关键字

      用于跳出本次循环,继续下一次循环(终止当前循环,开始下一次循环)

     十一、for循环

    1、基本循环

    1 s="alex"
    2 
    3 for item in s:
    4       print(item)

    2、break关键字

    1 s="alex"
    2 
    3 for item in s:
    4     if item =="l":
    5         break
    6     print(item)

    3、continue关键字

    1 s="alex"
    2 
    3 for item in s:
    4     if item =="l":
    5         continue
    6     print(item)

     其他功能

    1、enumrate

    为可迭代的对象添加序号

    1 li=[11,22,33]
    2 for k,v in enumerate(li,1):
    3     print(k,v)
    4 #输出结果
    5 (1, 11)
    6 (2, 22)
    7 (3, 33)
     1 #实例
     2 #enumerate 自动生成一列,0自增一
     3 #字符串
     4 #for key,item in enumerate(li,1):表示从1开始
     5 li=['电脑','鼠标垫','U盘','游艇']
     6 print(li)
     7 for key,item in enumerate(li,1):
     8     print(key,item)
     9 inp = input("请输入商品:")
    10 #字符串转换成int
    11 inp_num = int(inp)-1
    12 print(li[inp_num])

    2、range 和 xrange

    指定范围,生成指定数字

    print range(1,10)
    print range(1,10,2)
    print range(30,0,-2)
    #输出结果
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    [1, 3, 5, 7, 9]
    [30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]
    1 #range   xrange
    2 #py2.7
    3 #range,用获取指定范围内的数,range(0,10000000)  会在内存中创建,内存占满
    4 #xrange,用获取指定范围内的数,xrange(0,10000000) 不会在内存中创建
    5 for i in xrange(1,1000):
    6     print(i)
    7 
    8 #py3,range,等同关于2.7的xrange
    9 range(1,10)
    #从10开始取10到1的数字间隔为1,左开右闭
    1
    for i in xrange(10,1,-1): 2 print(i) 3 #输出结果 4 10 5 9 6 8 7 7 8 6 9 5 10 4 11 3 12 2
    #输出li元素中的索引
    li=['alex','eric']
    leee=len(li)
    for  i in range(0,leee):
        print(i,li[i])
    #输出结果
    (0, 'alex')
    (1, 'eric')
  • 相关阅读:
    【记录】20060430 11:30:00 本Blog访问量突破100000 !
    ESFramework介绍之(24)―― 日志记录IEsbLogger
    ESFramework介绍之(20)―― 插件自动升级
    ESFramework介绍之(21)-- Tcp组件接口ITcp介绍
    ESFramework介绍之(17)―― 支持漫游用户和跨区域功能请求
    python标准库学习9
    python标准库学习5 bisect — Array bisection algorithm
    C++中四种显示类型转换总结
    BeautifulSoup学习笔记
    jdbc连接数据库(水文)
  • 原文地址:https://www.cnblogs.com/zyqy/p/9234362.html
Copyright © 2020-2023  润新知