引子
Python是一种面向对象的编程语言,靠缩进来区分语句;
自动识别数据类型(无需定义数据类型);
字符串中有单引号时,要用双引号括起来:eg:print "let's go"
版本:pyhon 3.4.3 shell /pycharm community 5.0.4
本篇内容将python知识点分为三个部分:
一、python的数据结构
二、python的程序结构
三、Python函数
以下是这三个部分的内容细化:
一、python的数据结构
python基础知识
数据结构:常量、变量、元组(列表)、字典
数据类型:整数--int、浮点数--float、字符--str
算法:分支、循环
输入输出函数
1.输出函数
print (变量名,变量名...)
eg1:
a=1
b=2
print (a,b)
eg2:
a=1;b=2;c=3
print(("d%,f%,%s")%(a,b,c))
2.类型查看函数
eg:
a=1
print(type(a))
3.输入函数
变量名=input("提示信息") #括号内可不加内容
eg1:
a=input('please input a value')
print(a)
eg2:
b=raw_input('please input a value:') # raw_input()是默认输入数据为字符串类型,所以输入数据不加单引号也能以字符串类型数据输出。PS:raw_input在python3.4.3中需要调用才能实现功能。
print(b) #如b=2,输出结果为'2'
元组、列表
s=(1,2.5,"much") #元组tuple,里面的值不可改变(不能删,增加,修改)
eg(如图-元组里的元素不可删除):
![](https://img.haomeiwen.com/i12359089/70926cb741fc9fe0.png)
![](https://img.haomeiwen.com/i12359089/bd6a8f391f47d275.png)
s=[1,2.5,"much"] #列表list,list类型的元素可以改变(可删,增加,修改)
eg:
s=[1,2,3,4,5,6,7,8,9]
print(s[1:7:2]) #其中1为下限(开始打印),7为上限(不打印),2为步长(步长为1可不写,eg print(s[1:7]) 结果:[2,3,4,5,6])
执行结果:
[2,4,6]
eg:
pint(s[-2]) #列表从右往左第三个元素即:[7]
※ 操作方法:
1.逆序 s.reverse()
eg(格式):
s=[1,2,3,4,5,6,7,8,9]
print(s)
s.reverse()
print(s)
执行结果:
[1,2,3,4,5,6,7,8,9]
[9,8,7,6,5,4,3,2,1]
2.排序 s.sort() #改变原来列表元素的值,按大小排序
3.排序 s.sorted(s) #不改变原来列表元素的值。
4.插入 s.insert(n,m)
eg:
s.insert(1,20) #在元素1后插入元素20
如图:
![](https://img.haomeiwen.com/i12359089/c4b72fec322131a8.png)
![](https://img.haomeiwen.com/i12359089/ec6129483b9537c7.png)
5.追加s.append()
eg(如图):
![](https://img.haomeiwen.com/i12359089/3397488f0da2e6d1.png)
![](https://img.haomeiwen.com/i12359089/d109b43976c0ee43.png)
#元素90放在列表最后
6.max(s)、min(s)、len(s)
eg(如图):
![](https://img.haomeiwen.com/i12359089/bce42ae038ebb103.png)
![](https://img.haomeiwen.com/i12359089/4876c29493f83a43.png)
7.删除列表元素del s[n]
eg(如图):
![](https://img.haomeiwen.com/i12359089/caa65c7842fb7921.png)
![](https://img.haomeiwen.com/i12359089/8ff56af27493800c.png)
字典:应用于成对出现的值(如用户名:xxx 密码:xxx),大括号{}、输出结果无大小排序
eg: s={'a':10,'b':20,'c':15} #其中a,b,c为键key,10、20、15为值value,a:10、b:20、c:15为键值对
eg(如图):
![](https://img.haomeiwen.com/i12359089/97d058b36b5e3e76.png)
![](https://img.haomeiwen.com/i12359089/aff866f99c20f714.png)
PS:从执行结果可以看出,s字典输出无序,另外pint(s['a'])打印的是键值
1.print(s.keys()) #取出所有的键
eg(如图):
![](https://img.haomeiwen.com/i12359089/3f46d3dd72b5c7ee.png)
![](https://img.haomeiwen.com/i12359089/98c708186cfc3771.png)
2.print(s.values()) #取出所有的值
![](https://img.haomeiwen.com/i12359089/74f6148498e04eee.png)
![](https://img.haomeiwen.com/i12359089/648ba3d29a87ac0b.png)
3.print(s.items()) #取出所有的键值对
![](https://img.haomeiwen.com/i12359089/ca73ff6cedb86f39.png)
![](https://img.haomeiwen.com/i12359089/0f8e1eada456454a.png)
4.s.clear() #清空字典
![](https://img.haomeiwen.com/i12359089/e8e3167ad8379f62.png)
![](https://img.haomeiwen.com/i12359089/943a6f387e9ca1c4.png)
5.del s['n'] #删除键值
![](https://img.haomeiwen.com/i12359089/072695a843ba4e9c.png)
![](https://img.haomeiwen.com/i12359089/ad8f3c2a86b87be1.png)
二、python的程序结构
算法:1.if分支 2.循环(while循环/for循环)
1.if分支:1.1 if 分支 1.2 if else 分支 1.3 if elif else 分支
1.1 if 分支 #一种条件,一种结果
语法如下:
if 条件:
语句体
1.2 if else 分支 #一种条件,两种结果
语法如下:
if 条件:
语句体
else:
语句体
1.3 if elif else 分支 #多种条件,多种结果
语法如下:
if 条件:
语句体
elif:
语句体
else:
语句体
2.循环:2.1 while循环 2.2 for循环
2.1 while循环
while循环四要素:循环变量、循环条件、循环体、循环变量发生变化
语法如下:
循环变量
while 条件:
循环体 #注意最重要的是先定义循环体
循环变量发生变化
eg:
i=0
while i<5:
print(i)
i=i+1
2.2 for循环
• 无需定义变量,也无需写循环变量变化
• 执行循环的次数由序列中元素多少决定
for 变量 in 序列:
循环体
eg(如图):
![](https://img.haomeiwen.com/i12359089/a334542a96b56e85.png)
![](https://img.haomeiwen.com/i12359089/aefb68d6a6fddda1.png)
1)range(n) #产生一个0到n-1元素的序列
eg(如图):
![](https://img.haomeiwen.com/i12359089/346f0780268da4cb.png)
![](https://img.haomeiwen.com/i12359089/f1790bb3154c3c2f.png)
2)range(m,n) #产生一个m到n-1元素的序列
eg(如图):
![](https://img.haomeiwen.com/i12359089/fd5bae0c10ecba86.png)
![](https://img.haomeiwen.com/i12359089/020abf012f73603e.png)
3)range(m,n,i) #产生一个m到n-1元素,且步长为i的序列
eg(如图):
![](https://img.haomeiwen.com/i12359089/0bf184bf930aefe2.png)
![](https://img.haomeiwen.com/i12359089/ad59fdbb369dd7f6.png)
4)continue #停止当前循环,执行下一次循环
eg(如图):
![](https://img.haomeiwen.com/i12359089/66476405c297c5ac.png)
![](https://img.haomeiwen.com/i12359089/bc78a6593476c996.png)
# i=5,停止执行当前语句,继续又从 i+1开始执行(看以上python语句执行结果)
5)break #跳出整个循环,不再执行循环
![](https://img.haomeiwen.com/i12359089/ba7c4d9760bbe3a0.png)
![](https://img.haomeiwen.com/i12359089/58261241a6b052fa.png)
# i=5时,跳出整个循环,后面元素不再显示。
三、python函数:
定义个一个函数,为实现某种功能 / 若干条语句组成一段代码集合,代码帮我们实现一段程序
1.定义:
def 函数名(参数1,参数2): #----参数可有可无
语句体
return 变量 #----返回值
eg:
def add(a,b):
c=a+b
retrun c
2.调用(调用、传参、接收返回值)
变量=函数名(参数1,参数2) #----变量、参数可有可无
eg:c=add(a,b)
传参:
1)直接传参 c=add(1,2)
2)从键盘中输入数据传参
eg:
![](https://img.haomeiwen.com/i12359089/fa502a8c1219b19d.png)
![](https://img.haomeiwen.com/i12359089/d634d1fb873b927a.png)
PS:用input语句输出数字时,要先定义数据类型(如上例中的int类型),否则默认字符串类型
3)从函数内部接收数据,调用时不用传参
eg:
![](https://img.haomeiwen.com/i12359089/25475d74ad8bd1fb.png)
![](https://img.haomeiwen.com/i12359089/7985c16e28c2d2a0.png)
PS:函数中没有传参和返回值,调用时就无需传参和接收返回值
实例1:设计一个计算器,输入2个数,自动实现这两个数的加减乘除
• 定义多个函数实现加减乘除运算:
![](https://img.haomeiwen.com/i12359089/eccc150aa83cb109.png)
![](https://img.haomeiwen.com/i12359089/cfe01704d3ea7258.png)
• 另一种表达语句(将算法定义在一种方法里):
![](https://img.haomeiwen.com/i12359089/0ed5e9ad7a3a568e.png)
![](https://img.haomeiwen.com/i12359089/d383a1a372055831.png)
实例2:根据用户的输入的计算符号计算结果
![](https://img.haomeiwen.com/i12359089/dd895187010db6e5.png)
![](https://img.haomeiwen.com/i12359089/d8d61a4e01d4a3bf.png)
PS:因为input默认的输入数据是字符串类型,所以执行please input the string:语句输入加+ 、减-、乘*、除/ 运算时,无需加单引号括起来(eg: '+' '-' '*' '/' ),而是直接输入运算符(+ - * /)
另一种方法就是分别定义加减乘除的方法,再在if语句中调用
![](https://img.haomeiwen.com/i12359089/c0c159de7da0bb3f.png)
![](https://img.haomeiwen.com/i12359089/7a399e08ac74aaed.png)
![](https://img.haomeiwen.com/i12359089/27b74eb8e22c36c0.png)
网友评论