python基本语法学习


前言

从五月一日开始,研究生的实验室团队要求新生每周进行学习,并在周末提交自己的学习总结。学习的主要内容从python基础到机器学习到深度学习到pytorch框架,最后是一些经典网络的复现。虽然在大学期间已经学过很多次python,但是学了忘,所以还是按照流程,过一遍python的语法,以下会总结以前没有注意到一些知识点,方便以后自己查阅。学习的书籍是《python编程从入门到实践第二版》


一、字符串的格式化输出方式

如果想在字符串中插入变量的值,在字符串引号前输入f,然后在字符串中{}里输入变量即可。

str_1 = "deng"
result = f"hello,{str_1}"
print(result)

得到的结果是

hello,deng

但是如果想实现特定小数位数的格式化输出,还是使用format更好,更全面。
上面的例子,如果使用format方法的话

str_1 = "deng"
result = "hello,{name}".format(name = str_1)
print(result)

结果

hello,deng

可以理解为占位符,name是一个占位符,在format方法内,再指定name这个占位符的内容。
如果我想同时在字符串中使用变量,格式化输出浮点数

str_2 = "deng"
result = "hello,{name:s} is {data:.2f}".format(name = str_2,data = num)
print(result)

得到的结果是

hello,deng is 3.14

例子中使用了str_2变量,同时也将浮点数保留2位小数输出。
总结以下format的用法,在{}内,使用占位符,并且可以加:然后再输入数据类型,字符串为s,浮点数为f。

二、列表

1.列表的索引

从头到尾索引下标从0开始

list_a = [1,2,3,4,5]
list_a[0]

得到的结果是

1

也可以从尾到头索引,从-1开始

list_a[-5]

得到的结果是

1

2.修改列表元素的值

首先索引到该元素,然后另其等于另一个值就行

list_a[0] = 100

打印list_a的值

list_a
[100, 2, 3, 4, 5]

3.增加列表元素的值

list.append()方法
在这里插入图片描述
添加一个值到列表的末尾

list_a.append(50)

得到结果如下

list_a
[100, 2, 3, 4, 5, 50]

list.insert()方法
在这里插入图片描述
插入一个值在索引之前

list_a.insert(0,-1)

得到的结果如下

list_a
[-1, 100, 2, 3, 4, 5, 50]

4.删除列表元素的值

list.pop()方法
删除某个索引的值,并返回该值,默认为-1
在这里插入图片描述

num = list_a.pop(-2)

结果如下

num
5
list_a
[-1, 100, 2, 3, 4, 50]

list.remove()方法
删除一个出现的这个值
在这里插入图片描述

list_a.remove(2)

结果为

list_a
[-1, 100, 3, 4, 50]

5.关于列表的sort,sorted函数

sort()是列表的一个方法,任何列表都可以使用
在这里插入图片描述
当一个列表调用该方法后,这个列表会被改变,没有返回值

a = [5,4,3,2,1]
a.sort()
a

结果为

[1, 2, 3, 4, 5]

sorted不是列表独有的方法,是一个内置函数,所有的可迭代对象都可以使用该内置函数。会返回一个排序之后对象,原对象不变。
在这里插入图片描述

b = [5,4,3,2,1]
c = sorted(b)

可以发现b的值不变

b
[5, 4, 3, 2, 1]

c是b排序之后的列表

c
[1, 2, 3, 4, 5]

6.列表解析式(列表推导式)

可以理解为优雅的生产列表,一行代码生成所需列表。

d = [value**2 for value in range(1,11) if value%2==0]

得到的结果是

[4, 16, 36, 64, 100]

7.复制列表存在的问题

复制列表的第一种方式

a = [1,2,3]
b = a

这种实际上是将b关联到了a,对列表做操作,a,b都会同时发生变化

复制列表的第二种方式

c = a[:]

这种复制方式将a的副本关联到了c,a和c之间没有关系了
验证以下,分别对a,c执行操作,得到的结果是不一样的

a.append(100)
c.append(200)
a
[1, 2, 3, 100]
c
[1, 2, 3, 200]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值