初步学习Python

作者: | 更新日期:

最近由于工作需要,需要快速学习python.现在把学习的东西记录下来。

python 简介

Python 是一个高级语言。

Python 是一个解释性语言。

实现一个相同的任务,Python 实现速度更快,代码量更少。

但是 Python 的运行速度很慢。

Python 又很完善的基础内置库,也有很丰富的第三方库,很多网站都是用 Python 做的,很多公司和私用 Python 开发。

Python是跨平台的。

安装Python

目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。

只有 windows 需要安装 python, 其他系统一般自带的有 python.

windows 用户可以去python官网下载安装。

或者点击这里下载 python-download .

下载完后,双击安装即可(一直下一步)。

安装后需要配置一下 path 才可以使用。

配置完 path 之后,你就可以再终端执行 python 试试了。

注:

实际上我们安装的是 CPython解释器.

就像一个网页可以在不同的浏览器中打开,是由于都有网页的解释器。

简单尝试 python

python 很想 shell .

shell 显示的是 >, python 显示的是 »> .

我们可以直接输入 python 命令。

比如:

>>> print 'hello, world!'
hello, world  

不过,编写程序时,一般是使用编辑器先编辑,然后再运行的。

所以我们需要一个编辑器了。我一般使用 notepad++.

然后我们新建一个文件 hello.py。

文件内容是

print 'hello, world'

然后执行 python hello.py 就可以看到这个脚本的输出了。

直接运行 python 脚本。

我们常见的是直接就可以运行 脚本的,而且一般会看到在脚本的第一行有这个。

#!/bin/python
print 'hello, world'

第一行的作用就是制定默认的解释器的位置。

不过在linux 下,执行前需要有可执行权限的。

通过下面的命令可以添加执行权限。

chmod a+x hello.py

基本语法

输出

print something[,something]*

something 代表一个字符串或者数字。可以输出多个字符串,使用逗号分隔即可。输出时逗号会被替换为一个空格。

当然 something 也可以是一个公式或者函数,将输出返回的结果。

输入

something = raw_input(output-something)

something 一般是一个变量,raw_input可以读入一个字符串,output-something 用于在输入前输出的东西,一般是输入提示语。

注释

以 # 开头的为注释。

格式

python 有个比较奇葩的语法:使用缩进来限制格式。

但是没有规定缩进使用几个空白。

常用的缩进有一个 tab 或 4 个空格。

最好的方法是坚持所有缩进都使用4个空格。

类型

python 直接可以处理的类型有:整数,浮点数,字符串,布尔值。

由于字符串存在转义问题,于是提供了 r’’ 语法,单引号内部的东西不进行转义。这个和 shell 脚本类似。

同时,对于字符串中由换行符的情况时,使用 \n 不够清晰,于是 python 提供了 ‘'’…’’’ 语法。

三个单引号内部可以直接换行,代表字符串内的换行符。

list

list 是一种有序的集合,可以随时添加和删除其中的元素。 可以把list理解为数组,元素之间没有关系,可以是任意类型的。

array = ['one', 1, 'three']
print array
#['one', 1, 'three']

print len(array)
#3

print array[1]
# 1

print array[-1]
#three
 
array.append("four");
print array
#['one', 1, 'three', 'four']
 
array.insert(1, "one1")
print array
#['one', 'one1', 1, 'three', 'four']

array.pop()
print array
#['one', 'one1', 1, 'three']
  
array.pop(1)
print array
#['one', 1, 'three']

tuple

tuple和list非常类似,但是tuple一旦初始化就不能修改.

dict

dict, 又名map,使用键-值(key-value)存储,具有极快的查找速度。

set

在set中,没有重复的key。

变量

变量名必须是大小写英文、数字和_的组合,且不能用数字开头。

变量大小写区分。

变量是弱类型变量,即可以随意改变变量的类型。

# 定义一个整数
name = 1

# 定义一个字符串
name = "hello word"


# 定义一个数组(list)
name = []
name = ["one", [1,2]] # 数组长度为2

# 定义一个字典

name = {}
name["key"] = "value"

赋值

等号=是赋值语句,可以把任意数据类型赋值给变量。

同一个变量可以反复赋值,而且可以是不同类型的变量,即变量是弱类型变量。

常量

常量就是不能变的变量。

通常用全部大写的变量名表示常量。

格式化

%运算符就是用来格式化字符串的

'%4d-%02d-%02d' % (2014, 9, 25)

条件判断

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

例如

if 1>2:
    print "hello"
else:
    print "word"
    
if len(list):
    print "have value"
else:
    print "empty"

循环

while i<10:
    print i
    i = i + 1
    
for key in dict:
    val = dict[key]
    print val

函数

定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。

注:如果想定义一个什么事也不做的空函数,可以用pass语句。实际上pass可以用来作为占位符

返回多个值

在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值。

所以,Python的函数返回多值其实就是返回一个tuple

默认参数必须指向不变对象!

可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。

键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict

参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。

def main(argc):
    print argc
    return 1
# end main
点击查看评论

关注公众号,接收最新消息

关注小密圈,学习各种算法

tiankonguse +
穿越