python编程基础

python编程基础

一、python基础知识

二、文件操作

三、函数

四、面向对象与模块

 

一、python基础知识

  语法格式:代码块以Tab或空格缩进限制,而不以花括号”{}”等分割代码

  单行注释:#我是注释

  多行注释:'''多行

        注释'''

1、变量

(1)Python 中的变量不需要声明,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 

(2)变量  一般由字母、数字和下划线组成;通常第一个字符是字母或下划线‘_’;区分大小写。

(3)三种赋值方式

  a = 1

  A,b,c = 1,2,"python"

  a = b = c = 1 #多变量赋值

2、数据类型

   

3、python常用操作符

(1)算术操作符

  

(2)赋值操作符

  

(3)比较操作符

  

(4)逻辑操作符

  

  算术操作符一般会返回一个数,而比较和逻辑操作符会返回布尔值True或False。

3、函数    

  

4、字符串(string)

形式:'string1',"string2",'''string3'''

(1)单引号:与双引号一样

(2)双引号:任何在这双引号之间的文字

(3)三引号:三个引号被用于长段文字或说明,只要引号不结束,你就可以任意换行'

  字符串属不可变数据类型(不可修改)

字符串的基本用法:

  合并:'char1'+'char2'+'char3'

  重复:'word' * 3

  转换:int(string)

  切片与索引:str[0],str[-4], str[1:4], str[3:], str[:3]

字符串的方法:

 5、列表(list)

 形式:all_in_list = [ 1, 'a word’, print(1), True, [1,2], ]

(1)列表中每个元素都是可变的;

(2)列表中的元素是有序的,每个元素对应一个位置;

(3)列表可以容纳Python中的任何对象。

 列表的操作:增删改查

  (1)增加

  插入:all_in_list.insert(1,'add1')

  追加:all_in_list.append('add2','add3')

  (2)删除

    all_in_list.remove('add1')

    all_in_list.remove(all_in_list[0])

    all_in_list.pop('add1')

    del  all_in_list[1:2](左闭右开)

  (3)改

    all_in_list[1] = 'update_value'

  (4)查

    all_in_list[1] 

    all_in_list[1:3](左闭右开)  

  (5)列表的方法

    

 for循环:

(1)创建列表并赋值:

  x = []
  for i in range(10):
   x.append(i)
  print(x)

   

(2)列表推导式

  a = [i for i in range(1,11)]
  print(a)
  b = [i**2 for i in range(1,11)]
  print(b)
  c = [i**2 for i in range(1,11) if i%2==0]
  print(c)  

  

 (3)冒泡排序

对序列[6,5,4,3,2,1]按从小到大顺序进行排列。

x = [6,5,4,3,2,1]
n = len(x)
for i in range(n):
for j in range(n):
if x[i] < x[j]:
x[i],x[j]=x[j],x[i]
print(x)

 6、字典(dictionary)

形式:dic = {'key1':'value1','key2':'value2','key3:'value3'}

(1)键-值成对出现;

(2)键不能重复;

(3)键不可更改,值可修改;

(4)键来索引值。

字典的操作:增删改查

(1)增

  dic['key4'] = 'value4'

  dic.update('key5':'value5','key6':'value6')

(2)删

  del dic['key1']

(3)改

  dic.update('key5':'value15','key6':'value16')

(4)查

  dic['key2']

(5)字典推导式

a = {i:i**2 for i in range(10)}
print(a)

 

二、文件操作

1、打开文件

  使用open函数,可以打开一个已经存在的文件,或者创建一个新文件: open(文件名,访问模式)

形式:f = open('test.txt', 'w')

2、读数据

(1)使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据

  形式:content = f.read()

(2)readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素

  形式:content = f.readlines()

2、写数据

  使用write()可以完成向文件写入数据

  形式:f.write('hello world,\n')

3、关闭文件

  使用close()函数,关闭文件,不然文件一直会打开状态

  形式:f.close()

5、文件操作

 

三、函数

1、函数与方法

  函数:函数是不需要接在对象后面,单独使用,如int(x),print(x)

  方法:方法是接在对象后面 ,如list.append()

2、函数

(1)函数定义def

  def function(x,y):

    return 'result’

 (2)快速的定义函数 lambda

  函数名 = lambda 参数:操作(直接返回参数)

  l = lambda x:x[1]
  res = l([1,2,3])
  print(res)

  输出:2

 

四、面向对象与模块

1、类和对象

  类(class):抽象  如:人类      

  对象:实体   如:小美,小李

  对象是类的实体。

2、面向对象

(1)类

(2)对象

(3)属性

(4)方法

3、构造类

class Human:
def __init__(self,na=None,se=None):
self.name = na #属性
self.sex = se
def square(self, x): #方法
return x**2

ss = Human() #实例化类需要带括号
res = ss.square(3)
res = ss.name
print(res)

4、模块

  模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py

(1)安装

  pip3 install packagename (numpy,pandas)

(2)导入模块

  import math  #导入数学模块

  form math import sin #倒数数学模块中的sin()函数

  import math as mt    #导入模块重命名

(3)调用

  math.sin(x)

  mt.sin(x)

(4)导入自定义模块

  先在同目录下创建一个模块:

 

   在python.py中调用此模块

 

练习:自定义一个函数,求序列中的偶数。调用函数输入[1,2,3,4,5,6],并把结果输出
def ou_su(l):
list = []
for i in l:
if i % 2 == 0:
list.append(i)
return list
list = ou_su([1,2,3,4,5,6])
print(list)

练习:创建一个矩形Rectangle类, 要求这个类拥有getCircumference方法(计算矩形周长)、getArea方法
(计算矩形面积)。使用创建的类计算长为3,宽为4矩形的周长和面积,且要求把结果打印出来。
class Rectangle:
def __init__(self,x,y):
self.x = x
self.y = y
def getCricumference(self):
return 2*(self.x+self.y)
def getArea(self):
return self.x*self.y
r = Rectangle(3,4)
c = r.getCricumference()
print(c)
a = r.getArea()
print(a)

练习:文档词频统计并排序
import re
txt = txt.lower()
txt = re.sub('[,.:?!\'-]','',txt)
words = txt.split()
words_sq = {}
for i in words:
if i not in words_sq.keys():
words_sq[i] = 1
else:
words_sq[i] +=1
res = sorted(words_sq.items(),key=lambda x:x[1],reverse=True)
print(res)

 

posted @ 2020-07-10 16:33  派大星微微一笑  阅读(1340)  评论(0编辑  收藏  举报