python学习笔记

python学习笔记

注意点:

1.定义变量直接不用写变量类型,python会根据值自动识别变量类型

a=1;
a, b, c ,d= 1, 2, "python",true  //还可以连续定义

2.总共有六种数据类型

Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典)
其中:
Number(数字)、String(字符串)、Tuple(元组)-----不可变
List(列表)、Dictionary(字典)、Set(集合)----可变
不可变数据类型,当被重新赋值时相当于与之前值断开引用,然后与新值建立连接;可变数据类型,可以修改内部某个元素的值。例如:

def change(a):
    print(id(a))   # 指向的是同一个对象 8728378878
    a=10
    print(id(a))   # 一个新对象 9823457898
 
a=1
print(id(a)) #8728378878
change(a)

3.删除一写对象引用时

del name
del name,age

4.除法运算

数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。
在混合计算时,Python会把整型转换成为浮点数。

5.r

print(r'py\nthon') //r表示不转义,直接输出\n;

6.用下标查询时:正数代表从左向右,负数代表从右到左

7.true和false可以和数字相加,true代表1,false代表0

8.string、list、tuple异同

差异:
string和tuple是不可变,list可变,可以将字符串看成特殊的tuple(注意:虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。)
tuple是小括号()用逗号隔开,list是大括号[]用逗号隔开
相同:
//参数1:头下标 参数2:尾下标 参数3:步长
list[1:5:2]
str[1:5:2]
tuple[1:5]

9.可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

10.逻辑运算符 and or not

11.is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
12.print

//之前打印变量:
>>> name = 'python'
>>> 'Hello %s' % name
'Hello python'

//3.6之后可以用:
>>> name = 'python'
>>> f'Hello {name}'  # 替换变量

>>> f'{1+2}'         # 使用表达式
'3'

13.习惯不写分号

14.用def来定义函数

15.通过 StopIteration 异常标识迭代的完成
while:

list=[1,2,3,4]
it =iter(list)
print(next(it))

import sys
list=[1,2,3,4]
it =iter(list)
while True:
	try:
		print(next(it))
	except StopIteration:
		sys.exit()

if:

#用类方法来定义迭代
class deidai:
	def __iter__(self):
		self.a=1
		return self
	def __next__(self):
		if self.a <20:
			x=self.a
			self.a+=1
			return x
		else:
			raise StopIteration

16.迭代
yield:

#用yield来保存执行内容,下次执行的时候在这个断点处重新执行,yield也是返回的遍历器:
#!/usr/bin/python3
import sys
def xunhuan(n):
	count, a, b =0, 0, 1
	while True:
		if count > n:
			return
		yield a
		a,b=b,a+b
		count+=1
it=xunhuan(10)
while True:
	try:
		print(next(it))
	except StopIteration:
		sys.exit()

类:

#用类方法来定义迭代
class deidai:
	def __iter__(self):
		self.a=1
		return self
	def __next__(self):
		if self.a <20:
			x=self.a
			self.a+=1
			return x
		else:
			raise StopIteration

deidai= deidai()
it=iter(deidai)
for  i in it:
	print(i)

17.不定长参数
①情况一:一个*号:以元组的形式接收

def printinfo( arg1, *vartuple ):
   "打印任何传入的参数"
   print ("输出: ")
   print (arg1) #70
   print (vartuple) #(60,50printinfo( 70, 60, 50 )

②情况二:两个*号:以键值对的形式接收

def printinfo( arg1, **vardict ):
   "打印任何传入的参数"
   print ("输出: ")
   print (arg1) #1
   print (vardict) #{'a':2,'b':3}
   printinfo(1, a=2,b=3)

18.匿名函数:

#lambda关键字
sum = lambda arg1, arg2: arg1 + arg2

print ("相加后的值为 : ", sum( 10, 20 ))
print ("相加后的值为 : ", sum( 20, 20 ))
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值