python学习笔记(二)
来源:互联网 发布:电脑点不开任何软件 编辑:程序博客网 时间:2024/06/03 11:14
老师讲解总结,禁止转载
从0输出到n-1
range(start,end,step)
从start输出到end-1,步长为step
string.splict("x")
字符串的分割函数,根据字符x分割,分割后返回一个列表 string为字符串的名字
end=" "
使输出的在同一行显示
zip(列表1/元组1/字符串1,列表2/元组2/字符串2)
将两个序列”压缩”在一起,然后返回一个元组列表,可在for循环中用”解包”方式分拆开
global x
标识元素x为全局变量
元组
元组里的值不可以更改,但是若元组的元素为列表,则列表里面的值可以改
a = (1,2,[3,4,5],(6,7),"8,9")print(a)a[2][0] = 100#a[3][0] = 100#'tuple' object does not support item assignment#a[4][0] = 100#'str' object does not support item assignmentprint(a)
(1, 2, [3, 4, 5], (6, 7), '8,9')(1, 2, [100, 4, 5], (6, 7), '8,9')
一个元组由数个逗号分隔的值组成
元组在输出时总是有括号的,以便于正确表达嵌套结构
在输入时,有或没有括号都可以
元组有很多用途。例如(x, y)坐标点,数据库中的员工记录等等。
元组就像字符串,不可改变:不能给元组的一个独立的元素赋值(尽管可以通过联接和切片来模仿)
可以通过包含可变对象来创建元组,例如链表。
>>> lst = [1, 2, 3]>>> t = tuple(lst)>>> t(1, 2, 3)
一个特殊的问题是构造包含零个或一个元素的元组:为了适应这种情况,语法上有一些额外的改变。一对空的括号可以创建空元组;要创建一个单元素元组可以在值后面跟一个逗号(在括号中放入一个单值是不够的)。
>>> emp = ()>>> emp()>>> single = 'a', #<-- note trailing comma>>> len(emp)0>>> len(single)1>>> single('a',)
元组封装和解封
语句t = 12345, 54321, ’hello!’ 是元组封装(sequence packing)的一个例子:值12345,54321 和’hello!’ 被封装进元组。这个调用被称为序列拆封非常合适。序列拆封要求左侧的变量数目与序列的元素个数相同
其逆操作可能是这样
t = (1,2,3,4)a,b,c,d = tprint (a,b,c,d)print(t)
1234(1, 2, 3, 4)
列表封装和解封
t = [1,2,3,4]a,b,c,d = tprint (a,b,c,d)print(t)
1 2 3 4[1, 2, 3, 4]
字符串封装和解封
t = "1,2,3,4"a,b,c,d,e,f,g = tprint(a)print(b)print(c)print(d)print(e)print(f)print(g)print(t)
1,2,3,41,2,3,4
控制流
if语句是选择语句
是python的主要选择工具,代表python程序所拥有的大多数逻辑
If语句是复合语句,if语句可以包含其他语句
if <test1>: <statement1>elif <test2>: #注意 elif <statement2>else: <statement3>
if后面真值测试
数字非零则为真
对象非空则为真
While
while、for语句用于提供循环的控制功能
While一般格式
while <test>: <statement1>else: <statement2>注:如果 while由于break结束,则 else内容也不会执行
while按次数执行结束,执行else语句
number = 23k = 0while(1): guess = int(input("请输入一个你猜测的数字: ")) if guess == number: print("恭喜你!猜测的数字与答案一致") print('您一共花了',k,'次猜出了答案') break elif guess<number: print("猜测的数偏低") k = k + 1 else: print("猜测的数偏高") k = k + 1
请输入一个你猜测的数字: 67猜测的数偏高请输入一个你猜测的数字: 45猜测的数偏高请输入一个你猜测的数字: 24猜测的数偏高请输入一个你猜测的数字: 22猜测的数偏低请输入一个你猜测的数字: 23恭喜你!猜测的数字与答案一致您一共花了 4 次猜出了答案
for循环:
for循环是python中一个通用的序列迭代器;可以遍历任何有序序列对象内的元素
for语句可以用于字符串、列表、元组、其他内置可迭代对象,以及用户通过类创建的新对象。
for也可以带else语句,在for正常结束后,运行else语句
for x in [1,2,3,4] x=1 x=2 ..#列表 (1,2,3,4) x=1 x=2 ..#元组 "hello" x='h' x='e' ..#字符串
my_list = [1,2,'a',"hehe",1+3j,[1,2],(1,2)]for item in my_list: print(item,"\t",type(item))
Range()内容索引器
range(5) 输出0,1,2,3,4 长度为5
rang(a) 长度为a 范围 0~(a-1)
range(1,5) 输出1,2,3,4 默认步长为1
range(a,b,c) 范围为[a,b) 步长为c
string.splict()函数 分割函数
根据splict() 括号里的 进行分割
转载地址:http://www.runoob.com/python/att-string-split.html
st = "Zhengzhou Is A Beautiful City" for item in st.split(" "): print(item,len(item))
st = "Zhengzhou Is A Beautiful City"for index in range(len(st)): print(st[index],end=" ")end = " " 作用 使输出的值在同一行
zip(列表1/元组1/字符串1,列表2/元组2/字符串2)
Zip是将两个序列”压缩”在一起,然后返回一个元组列表,可在for循环中用”解包”方式分拆开
names = ["Xiaoming","Xiaowang","Xiaomei"]ages = [21,22,23]for name,age in zip(names,ages): #用的是解包 print(name," is ",age,"years old")#以元组的形式输出出来
zip(names,ages) = (("Xiaoming",21),("Xiaowang",22),("Xiaomei",23))
函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数
函数名的命名规则要符合python中的命名要求。一般用小写字母和单下划线、数字等组合
def是定义函数的关键词,这个简写来自英文单词define
函数名后面是圆括号,括号里面,可以有参数列表,也可以没有参数
千万不要忘记了括号后面的冒号
函数体(语句块),相对于def缩进,按照python习惯,缩进四个空格
a,b并没有严格规定其所引用的对象类型。这是python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。python不用那样做。
def 函数名(参数1,参数2,...,参数n):
函数体(语句块)
函数的参数不需要定义类型:灵活、多态
函数参数默认值
def times(x,y=2): print("x=",x) print("y=",y) if __name__ == "__main__": times(3) times(3,4)
x= 3y= 2x= 3y= 4
def func_app(x): x.append(99) return xx = [3,4,5,6]func_app(x)print(x)
[3, 4, 5, 6, 99]
全局变量与局部变量
x = 2 #全局变量def my_func(): x = 8 #局部变量 print("x is ",x) def my_func2(): global x #全局变量 x = 8 print("x is ",x)my_func()print("经过func1后x变为:",x)print("-------------------")my_func2()print("经过func2后x变为:",x)
x is 8经过func1后x变为: 2-------------------x is 8经过func2后x变为: 8
输入参数搜集器
def my_func(x,*args): print(x) for item in args: print(item,end=" ") my_func(5,["Hello","Zhengzhou"])
- python学习笔记二
- Python学习笔记(二)
- python学习笔记二
- python学习笔记:二
- python 学习笔记二
- python学习笔记(二)
- Python学习笔记二
- python学习笔记二
- python学习笔记二
- python 学习笔记(二)
- python学习笔记二
- python学习笔记二
- python学习笔记二
- Python学习笔记(二)
- python学习笔记(二)
- Python学习笔记二
- Python学习笔记二
- python学习笔记二
- 在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能
- 利用SQLyog实现mysql数据库定时自动备份
- 绝对路径与相对路径
- OSG动画库Animation解析(一)
- 关于mipmap的一些小记
- python学习笔记(二)
- OCX制作CAB(二)-- OCX打包CAB和签名
- ArrayList Vector LinkedList 区别与用法
- CSS基础
- Ubuntu键盘响应程序
- 模拟实现strstr函数
- bzoj2882: 工艺
- iOS编程基础-Swift(四)-对象类型(续)
- C++ 栈实现队列