Python笔记,逐渐更新ing

这篇博客详细介绍了Python的基础语法,包括字符串的操作、序列的切片与步长、元组、字典、集合的使用,以及异常处理。同时,讲解了函数的定义、默认参数、可变参数和关键字参数的用法,还提到了lambda表达式。此外,深入探讨了numpy库的数组操作,如创建、切片和布尔索引,以及pandas库的Series和DataFrame数据结构。最后,文章提到了ufunc函数和matplotlib库在数据可视化中的应用。

字符串:是一种序列,是不可变的

a[-1]: 为倒数第一个
a[0:2]: 左闭右开
a[1:10,2]: 2表示步长
字符串重复:“how”*3

4//3 返回商的整数部分

单引号和双引号作用相同,表示字符串;
三引号可以表示多行

字符串数字转化类型:
1.整数用 int(“3”)
2.浮点数用 float(“3.14”)

占位符
s1=“there are %d %s”%(10,‘books’)
s2=“there are %d birds”
print(s2%(20))

字符串格式化

>>>"{} {}".format("hello","world")
"hello world"
>>>"{0} {1}".format("hello","world")
"hello world"
>>>"{1} {0} {1}".format("hello","world")
'world hello world'

my_list = [‘菜鸟教程’,‘www.runoob.com’]
ptint(“网站名:{0[0]}, 地址:{0[1]}”.format(my_list))

print(’{0:.3} is a decimal’.format(1/3)) #小数点后三位

字符串填充不能用字符串,只能用单个字符

s=‘how are you’
s.split() 按空格分割
s.split(‘i’) 分割后i会消失
s.split(‘i’,2) 只分割前两个i

>>>'*'.join(s.split())
how*are*you

元组(tuple):由数个逗号分隔的值组成,不可变,元素可以嵌套,元素可以是任何类型创建元组不定长,创建后不可改变长度

字典:通过关键字索引的无序数据的集合 类似java的map

tel={'age':12, 'name' : 'bob'}
tel['gree']=4127  加入字典中

集合(set):无序的,不重复的数据组合 可变集合(set()) 不可变集合(frozenset())
作用:列表变成集合自动去重,可测试两组数据间的交集,差集,并集等关系
a|b 并集 a&b交集 a-b差集 a^b对称差集


捕获异常

try:
     xxxxxxxx
except:
      print('please input correct age!')
会反复循环,直到try中的内容不再抛出异常为止

列表解析

>>>L = [(x+1)(y+1)for x in range(3) for y in range(5)]
>>>print(L)

---------------------------------------------函数------------------------------------------------------
def 函数名(a, b=5):
xxxxx
return c
b=5是默认参数
带默认值的参数必须比不带默认值的后定义
f(x) 加表示参数个数不确定,无论有多少个参数值存放在名为x的元组中
f(**x) 存在名为x的字典中
例子:

>>>f(a=1, b=2)
{'a' : 1, 'b' : 2}
def test(x, y=1, *a, **b):
     print(x, y, a, b)
>>>test(1, 2, 3, 4)
1 2 (3, 4) {}
>>>test(1, 2)
1 2 () {}
>>>test(x=1, y=2)
1 2 () {}
>>>test(1, a=2)
1 1 () {'a' : 2}
>>>test(1, 2, 3, y=4)
报错,不能用y,或者让y=4写在第二位

lambda表达式
s=lambda x: x*x 输入参数x,返回x的平方
s(2)=4


reduce函数
from functiools import reduce
def add(x, y)
return x+y
reduce(add, [1, 2, 3, 4, 5, 6])
输出16
reduce(lambda x,y : x*y range(1, 6))
输出120

open(‘filename’)

dump和load可以存任何类型的python对象,如函数
pickle.dump(xx , f) 将python对象转成二进制对象文件,xx是要存的(可以是元组,函数等等),f是已经open的文件
pickle.load(f) 将二进制文件对象转换成pyhon对象

---------------------------------------------------类--------------------------------------------------
class Complex:
def init(self, realpart, imagpart) #类的实例化会自动为新创建的类实例调用_init_()方法
self.r = realpart
self.i = imagpart
x = Complex(3.0, -4.5)
print(x.r, x.i)

----------------------------------------------------数组------------------------------------------------
import numpy as np
a = np.array([1, 2, 3, 4])
print(a)
array([1, 2, 3 , 4])

ndim a : 1 a为一维数组
size a : 4 a中元素个数
dtype a : int32 a中元素类型
itemsize a : 4 a中每个元素的大小

创建数组
np.arange( )
np.linspace( )

数组切片与原数组共享空间
布尔索引:不共享数据空间
数组a: 1 2 3 4 5 6 7 6 5 4 3 2 1
a[a > 5] -> 6 7 6

二维数组
a[0, 3:5] 第0行第3第4列
a[4:, 4:] 第4行到结尾,第4列到结尾
a[2::2, ::2] 第2行开始到结尾,步长为2,第0列到结尾,步长为2
a[(0,1,2,3,4,), (1,2,3,4,5)] 行和列一 一对应

----------------------------------------pandas---------------------------------------------
Series可以看成定长的有序字典(非整数作为切片索引时,是末端包含的)
s = Series([1, 2, 3.0, ‘abc’])
print(s)
0 1
1 2
2 3.0
3 ‘abc’

DataFrame是一个表格型的数据结构,由一组有序的列构成,每列可以是不同的值类 型,不像 ndarray 只能有一个 dtype。
DataFrame既有行索引也有列索引,基本上可以把 DataFrame 看成是共享同一个 index 的 Series 的集合。

--------------------------------------ufunc函数------------------------------------------------
ufunc是universal function的缩写,它是一种能对数组的每个元素进行操作的函数。

a = np.linspace(1, 100000, 100000)
np.cos(a)

用matplotlib中的pyplot画包含子图的图
https://www.cnblogs.com/caizhou520/p/11224526.html

源码来自:https://pan.quark.cn/s/41b9d28f0d6d 在信息技术领域中,jQuery作为一个广受欢迎的JavaScript框架,显著简化了诸多操作,包括对HTML文档的遍历、事件的管理、动画的设计以及Ajax通信等。 本篇文档将深入阐释如何运用jQuery达成一个图片自动播放的功能,这种效果常用于网站的轮播展示或幻灯片演示,有助于优化用户与页面的互动,使网页呈现更加动态的视觉体验。 为了有效实施这一功能,首先需掌握jQuery的核心操作。 通过$符号作为接口,jQuery能够迅速选取DOM组件,例如$("#id")用于选取具有特定ID的元素,而$(".class")则能选取所有应用了某类class的元素。 在选定元素之后,可以执行多种行为,诸如事件监听、样式的变更、内容的更新以及动画的制作等。 关于“一个基于jQuery的图片自动播放功能”,首要任务是准备一组图片素材,这些素材将被整合至一个容器元素之中。 例如,可以构建一个div元素,将其宽度设定为单张图片的尺寸,再借助CSS实现溢出内容的隐藏,从而构建出水平滚动的初始框架。 ```html<div id="slider"> <img src="image1.jpg" alt="Image 1"> <img src="image2.jpg" alt="Image 2"> <!-- 更多图片内容... --></div>```接着,需要编写jQuery脚本以实现图片的自动切换。 这通常涉及到定时器的运用,以设定周期性间隔自动更换当前显示的图片。 通过使用`.fadeOut()`和`.fadeIn()`方法,能够实现图片间的平滑过渡,增强视觉效果。 ```javascript$(document).re...
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值