Python入门基础

一、Python简介

  Python是著名的“龟叔” Guido van Rossum在1989年的阿姆斯特丹为了打发无聊时间开发的一个新的编程语言。      

   龟叔给Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,适合新手学习。


Python创始人 "龟叔"

 

 

  Python应用领域

  Python是一门 全栈式开发语言,主要应用于数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。

  Python的优缺点

  Python面向对象,免费,可移植,功能强大,简单易学,容易上手。Linux内置Python。

  Python也有缺点,主要是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

二、第一句Python代码

     print("Hello World!")

    python内部执行过程如下:

    

三、更新Python

  Linux系统自带Python,无需安装,不过默认安装的版本较低,更新即可。  

 1 查看默认Python版本
 2 python -V
 3  
 4 1、安装gcc,用于编译Python源码
 5     yum install gcc
 6 2、下载源码包(本文以Python3.5.1为例)
    wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz 7 3、解压并进入源码文件 8 4、编译安装 9 ./configure --prefix=/usr/local/python35 10 make all 11 make install 12 5、修改默认Python版本 13 mv /usr/bin/python /usr/bin/python2.6 14 ln -s /usr/local/python35/bin/python3 /usr/bin/python 15 6、防止yum执行异常,修改yum使用的Python版本 16 vi /usr/bin/yum 17 将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6

四、脚本传参

Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三中:

  • Python内部提供的模块
  • 业内开源的模块
  • 程序员自己开发的模块

Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行执行python脚本时传入的参数,argv类型为列表

1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3  
4 import sys
5  
6 print sys.argv   

[root@localhost ~]# python argv.py 
['argv.py']
[root@localhost ~]# python argv.py 8080
['argv.py', '8080']

五、输入

1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3  
4 # 将用户输入的内容赋值给 name 变量
5 name = input("请输入用户名:")
6  
7 # 打印输入的内容
8 print name

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

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3  
 4 import getpass
 5  
 6 # 将用户输入的内容赋值给 name 变量
 7 pwd = getpass.getpass("请输入密码:")
 8  
 9 # 打印输入的内容
10 print(pwd)

六、基本数据类型

1、数字

   2 是一个整数的例子。

长整数 不过是大一些的整数。

3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。

(-5+4j)和(2.3-4.6j)是复数的例子。

int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
  在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
long(长整型)
  跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
  注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
float(浮点型)
  浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。
complex(复数)
  复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注:Python中存在小数字池:-5 ~ 257
 

2、字符串

字符串格式化 

1 name="flash"
2 print("I am %s" %name)
3 
4 #输出: I am flash

PS: 字符串是 s% ; 整数是 d%;浮点数是 f%;原样打印是 %r.      

1 print("字符串:%s 整数:%d 浮点:%f 原样打印:%r" % ('aa',2,1.5,'r'))
2 
3 #输出  字符串:aa 整数:2 浮点:1.500000 原样打印:'r'

       

字符串常用功能:

  • 移除空白    strip
  • 分割          split
  • 长度          len(obj)
  • 索引          obj[1]
  • 切片          obj[1:] , obj[1:10]

2、列表

创建列表:

     name_list = [alex,john,flash]      

     或

     name_list = list([alex,john,flash])

基本操作:

  • 索引   index
  • 切片   :
  • 追加   append
  • 删除   del  remove   pop
  • 长度   len
  • 循环   for,while (foreach)   中断  break;continue(跳出循环);pass;return;exit
  • 包含   in;not in  __contains__

3、元祖

    元祖元素不可修改,元祖元素的元素可以修改  

1 t1 = (11,22,{'k1':'v1'})
2 t1[2]['k1']=3
3 print(t1)

4、字典(键值对)

健、值、键值对

keys、values、items

5、应用示例

  

 1 '''
 2 account.txt文件中的内容为:
 3 flash|12345|1
 4 alex|23456|1
 5 tony|34567|1
 6 要求把它转换成下面的字典格式:
 7  8     "flash":{'pwd':'12345','登录次数':1},
 9     "alex":{'pwd':'23456','登录次数':1},
10     "tony":{'pwd':'34567','登录次数':1}
11 12 '''
13 
14 match = {}
15 with open("account.txt","r") as f:
16     for i in f.readlines():
17         i = i.strip().split("|")
18         match[i[0]]={"pwd":i[1],"登录次数":i[2]}
19 print(match)
运维因自动化而有趣!
原文地址:https://www.cnblogs.com/Rambotien/p/5395491.html