python学习笔记

python 复制代码
>>> print(type(3.1415926))
<class 'float'>
>>> print(type('Learn Python in imoc'))
<class 'str'>
>>> print(type(100))
<class 'int'>
>>> print(type(0b1101))
<class 'int'>
>>>

在Python里面,一个变量可以先后存储多种不同类型的数据。

python 复制代码
//向下取整
10//4 # ==> 2
10//2.5 # ==> 4.0
10//3 # ==> 3
python 复制代码
//保留两位小数
round(num, 2) # ==> 3.33
python 复制代码
//我直接转义
a = r'\(~_~)/ \(~_~)/'
b = r'''Python is created by "Guido".
It is free and easy to learn.
Let's start learn Python in imooc!'''
print(a)
print(b)
python 复制代码
//格式输出
# 指定{}的名字w,c,b,i
template = 'Hello {w}, Hello {c}, Hello {b}, Hello {i}.'
world = 'World'
china = 'China'
beijing = 'Beijing'
imooc = 'imooc'
# 指定名字对应的模板数据内容
result = template.format(w = world, c = china, b = beijing, i = imooc)
print(result) # ==> Hello World, Hello China, Hello Beijing, Hello imooc.

print ("我叫 %s 今年 %d 岁!" % ('小明', 10))# 感觉不如?
python 复制代码
//字符串切片
//s[起点:终点]
s = 'ABC'
ab = s[0:2] # 取字符串s中的第一个字符到第三个字符,不包括第三个字符
print(ab) # ==> AB
python 复制代码
//list
L = ['Alice', 66, 'Bob', True, 'False', 100]
print(L)
for i in L://遍历
    print(i)
sub_L = L[0:5]//切片,超出去不会报错
print(L[-2])//倒数第二个
L.append('ll')//从末尾添加元素
L.insert(1, 'a')//在L[1]后添加元素
L.pop()//删除最后一个元素,并且返回该元素的值
L.pop(2)//删除L[2]
a = L.pop()//可以赋值

//二维list
L = [[1, 2, 3], [5, 3, 2], [7, 3, 2]]
print(L[0])
print(L[0][1])

tuple

可以与list相互转换, 不能增删

python 复制代码
#tuple
L = (1, 1, 4, 5, 1, 4)#tuple用小括号括起来
a = list(L)#转换成list
b = tuple(a)#转换成tuple
print(L.count(1))#查询L中有几个1
print(L.index(1))#返回最近的1的下标,需要目标元素存在
T = (1, )#单个元素的tuple
T = (1)#这样的话其实是1
T = ((1+2),  ((1+2),), ('a'+'b'), (1, ), (1,2,3,4,5))
print(T)

#不可变指的是指指向的list不可变,然而list里面的内容可以改变
T = (1, 'CH', [3, 4])
L = T[2]
print(L) # ==> [3, 4]
# 尝试替换L中的元素
L[1] = 40
print(L) # ==> [3, 40]
print(T) # ==> (1, 'CH', [3, 40])

什么勾八

python 复制代码
L = [1, 2, 3]
T = L
T[0] = 3
print(L) ===> [3, 2, 3]

怎么python注释是用的#

dict

很像map吗

python 复制代码
d = {
    'Alice': 45,
    'Bob': 60,
    'Candy': 75,
    'David': 86,
    'Ellena': 49
}
if 'Alice' in d:
    print(d['Alice']) # ==> 45
    print(d.get('Alice'))
if 'Dodo' in d: # Dodo不存在,所以不会走下面的逻辑
    print(d['Dodo'])

#用get不存在的话不会报错,直接用[]访问若不存在会报错

d['aa'] = 1 #直接添加
print(d['aa']

d.pop('Bob') #删除Bob这一项,注意元素不存在时会报错

#key不可变,因此tuple可当做key,而list不可以

for key in d:
    print(key, d[key]) #遍历key并输出
   
a = d.keys()//获取key,但是clear后它也会清零,很奇怪
b = d.values()//获取value
d.clear()

set

python 复制代码
s = set([1, 1, 4, 5, 1, 4])
print(1 in s) #判断1是否在set里
s.add(2) #添加单个
s.update([11, 22]) #添加多个
s.remove(5) #删除
s.discard(11) #删除,不存在的元素不会报错
s.clear()

s1 = set([1, 2, 3, 4, 5])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
# 判断s1是否为s2的子集
s1.issubset(s2) # ==> True
# 判断s2是否为s1的超集
s2.issuperset(s1) # ==> True

s1 = set([1, 2, 3, 4, 5])
s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])
s1.isdisjoint(s2) # ==> False,因为有重复元素1、2、3、4、5
#判断两个集合是否重合

函数

python 复制代码
def func(*args):
    print('args length = {}, args = {}'.format(len(args), args))
# 可变参数,在函数内部args相当于tuple

def fun(**kwargs):
    print(kwargs.get('a') + kwargs.get('b'))
fun(a = 2, b = 3)
# 可变关键字参数

????

python 复制代码
print(1, end=" ") # 默认换行
print(2)
相关推荐
固定资产管理系统软件11 分钟前
商务局RFID固定资产管理系统的应用价值与落地要点解析
大数据·python
tju新生代魔迷36 分钟前
Python学习日记3
学习
lancyu1 小时前
关于多轮对话机器人的上下文Token优化和解决方案
人工智能·python·深度学习·机器学习·chatgpt·机器人·prompt
草莓橙子碗2 小时前
Claude 使用指南
开发语言·python
hsjiasb2 小时前
FreeRTOS学习(三十九)——最终总结
学习·学习笔记·freertos
工具分享2 小时前
陪跑跟品爆单AI选品助手,高效跟品会赔本吗?
人工智能·python
COOLMO研究AI2 小时前
Python 如何实现 AI API 的提示词(Prompt)版本管理与热更新
人工智能·python·prompt
老郑聊AI业财智造2 小时前
Transformer 技术架构与源码分析
人工智能·python·深度学习·语言模型·架构·transformer·软件工程
程序员三藏2 小时前
自动化测试用例编写详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
m4Rk_3 小时前
【论文阅读】Agent 记忆机制(47):Nemori——用“预测误差”判断什么经验值得被记住
论文阅读·人工智能·学习·开源·github