python 基本语法 和 python 技巧 整理

python 技巧 的整理

写在前面

逗比龙和jy 被我洗脑来学python了,还说我是传销。

expression cry
我这是解救他们于水深火热好么!expression maimeng

 

写点 python的基本语法 和 python 技巧

 

一、模块的安装

主要有easy_install 和pip,用法如下

  • easy_install XXXX
  • pip install XXXX
  • pip unistall  XXXX

推荐用pip,以为它可以卸载模块

 

二、准备开始

  • 在Linux下直接运行python #!/usr/bin/env python
  • 标明文件编码,主要用于文件中如果有中文字符的话。。 # -*-coding:utf-8 -*
  • 单行注释 为#,多行注释可以用三个单引号如:”’          XXX    ”’

 

三、python基本语法

(一)输入输出

1.输出:

从Hello word 开始

ps:print 遇到,自动打印一个空格,上面两句打印效果是一样的 : )

2.输入:

读入一行数据,并且打印的demo:

 

(二)一看就会的简单语句

1.条件

需要注意的是if /elif/ else后面均有 :

如果之后的语句只有一句,那么可以写在同一行

这么写也可以 : )

 

2.循环

(1) for xx in xxx :

(2) while xx :

计算100以内所有奇数之和

当然这只是个样例。。

【高级篇】其实我们可以一行搞定…..:

range(a,b,c)  a起始位置, b终止位置(不包括b),c步长

 

(三)基本数据类型

1. list

list和C/C++中的数组很像,无非把{}改为[]

如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素:

以此类推,可以获取倒数第2个、倒数第3个:

添加和删除:

要把某个元素替换成别的元素,可以直接赋值给对应的索引位置:

ist里面的元素的数据类型也可以不同,比如:

list元素也可以是另一个list,比如:

 

 

2.tuple

tuple和list非常类似,但是tuple一旦初始化就不能修改,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素

 

3.dict

其他语言中也称为map,使用键-值(key-value)存储

用Python写一个dict如下:

判断key是否存在:

通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

d.get(‘Thomas’)
d.get(‘Thomas’, -1)

要删除一个key,用pop(key)

 再来看样例2:

setdefault(‘b’,1) 如果key b不存在的话,就插入并且值设为1

而items=keys+values   即key和对应的value

4.set

要创建一个set,需要提供一个list作为输入集合:

 

add(key)方法可以添加元素到set中
remove(key)方法可以删除元素:

set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作,也可以用in 来判断是否在集合中:

 

(四)函数

1.定义

def name (params):

2.通过字符串调用Python函数

假如遇到下面这种情况:我们的函数名就差几个字母(因为是不同情况下的方法),难道要写个if elif 判断?

答案是No!这样太丑了!简直不忍直视!

答案是用eval(func_name)(params)进行调用!

eg:

输出:

I’m a handsome boy

 

(五)觉得很爽的玩意

1.长度

求任意类型的长度统一:

不像某语言,又size又length的

2.幂运算

python 的幂运算 如x的五次方,不必写pow(x,5)了,这么写太丑了。
直接x * 5 (两个 代表幂运算,perl也有这个)

3.切片

切片是最爽的功能:
看下面的例子你就秒懂了

Python简洁优雅的风格一览无遗啊!!!!

 

(六)循环进阶

1. range和xrange

range和xrange如果从0开始,都可以省略0。
他们的用法一样: 下面四句都是等价的,即循环从[0,10) 不包括10

在Python2中,range直接生成了一个list,占用空间大,而xrange是生成一个迭代器,占用资源小,效率高,推荐后者。

PS:python3中删除了range的实现,改为xrange的实现方法。同时保留了xrange。

2. for 从大到小

你以为For循环只能从小到大么?
一开始学的时候我还觉得不科学,其实不是的。
下面的代码输出从10~1的数:是的,它和切片一样,最后一个都是表示步长

 

四、数组

数组创建和初始化

 

warning:
二维数组不能采用如下方法进行初始化(这样只是浅拷贝)

Output:

 

 

五、字符串

写过其他高级语言的都知道,字符串的连接用 + ,字符串复制 = ,分割字符串split

(一)字母转化

1.大小写转化

输出:

HRWHISPER
hrwhisper

2. ASCII编码转化

 

 

(二)join

数组转字符串

字符串插值

(三)切片

给定字符串位置进行复制

翻转字符串

字符串排序

去除末尾换行

 

六、栈和队列

python其实并没有这两个玩意,但是有list足矣。

由于栈是后进先出,每次入栈,还是直接append(),出栈我们只需要pop(),即可

队列

由于栈是先进先出,每次入队,还是直接append(),出队我们只需要pop(0),即可

是不是比某写语言爽!!!

 

七、文件

推荐如下写法:每次读取一行,并且自带文件关闭。

毕竟咱总不至于非要这么写吧…

 

对于打开一个文件,可以有如下三种读取方法:

  • read()一次性读取全部,适用于小文件
  • read(size) 每次读取size 个大小,适用于文件大小未知
  • readlines() 每次读取一行,可以来读配置文件

 

八、类

变量命名

  • xxx :特殊的变量,可以直接访问。
  • __xxx:就是private
  • 其他的为Public

有些时候,你会看到以一个下划线开头的实例变量名,比如_name,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问

 

 

八、除此之外,你还可以学:

各种科学库

爬虫

 

 

本博客若无特殊说明则由 hrwhisper 原创发布
转载请点名出处:细语呢喃 > python 基本语法 和 python 技巧 整理
本文地址:https://www.hrwhisper.me/python-grammar-and-some-tricks/

您的支持将鼓励我继续创作!

python learning . permalink.

2 thoughts on “python 基本语法 和 python 技巧 整理

Leave a Reply

Your email address will not be published. Required fields are marked *