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')
原文地址:https://www.cnblogs.com/zyqy/p/9234362.html