python基础教程(第三版)学习笔记(五)

本文是Python基础教程第五章的学习笔记,涵盖了print函数的详细使用,包括sep和end参数;介绍了import语句的重命名导入以及如何避免同名函数冲突;讲解了序列解包、链式赋值和增强赋值的概念与应用;详细阐述了Python中的条件语句(if-else-elif)、代码块、布尔值和比较运算符;探讨了while和for循环,以及range、enumerate、zip等迭代工具;最后提及了break、continue语句,以及列表推导等基本编程概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第五章 条件、循环和其他语句
5.1 print和import
1、sep打印分割样式:
'''

print("a","b","c",sep="_")


'''

a_b_c


------------------
(program exited with code: 0)

请按任意键继续. . .


2、end打印的末尾格式
'''
 

print("a","b",end=(""))
print("a","b",end=("\t"))
print("a","b",end=("*"))
print("a","b",end=("\n"))
print("a","b","c",sep="_")

'''

a ba b  a b*a b
a_b_c


------------------
(program exited with code: 0)

请按任意键继续. . .

其实,print是python的一个内置函数,它的参数可选,它的原函数为:
print(self, *args, sep=' ', end='\n', file=None)
#以下是原注释。
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.  #默认情况下,将值打印到流或sys.stdout文件。
    Optional keyword arguments: #可选关键字参数:
    file:  a file-like object (stream); defaults to the current sys.stdout.     #file: 一个类似文件的对象(流);默认为当前sys.stdout。
    sep:   string inserted between values, default a space.   # sep:在输出字符串之间插入值 ,默认为空。
    end:   string appended after the last value, default a newline. #end:附加在最后一个值之后的字符串,默认为换行符。
    flush: whether to forcibly flush the stream.   #flush:是否强制输出流。(默认为False)
5.1.2 导入时重命名
从模块导入时,通常使用①import somemodule 或使用②from somemodule import somefunction 或
③from somemodule import somefunction, anotherfunction, yetanotherfunction 或④from somemodule import *
仅当你确定要导入模块中的一切时,采用使用最后一种方式。 如果有两个模块,包含同名函数,就第一种方式导入相应的模块,但还有一种办法:在语句末尾添加as子句并指定别名。下面是一个导入整个模块并给它指定别名的例子:
'''

import math as abcde
print(abcde.sqrt(9))


'''
指定abcde为math模块的别名。输出结果为:

3.0


------------------
(program exited with code: 0)

请按任意键继续. . .


也可以为导入的函数指定别名。
'''
 

from math import sqrt as abcd
print(abcd(9))

'''

3.0


------------------
(program exited with code: 0)

请按任意键继续. . .

5、赋值魔法
5.2.1序列解包
可同时(并行)给多个变量赋值:
'''

x,y,z,=2,3,4
print(x,y,z,

)
'''

2 3 4


------------------
(program exited with code: 0)

请按任意键继续. . .


使用这种方式还可交换多个变量的值。
'''
 

x,y,z=z,y,x
print(x,y,z)

'''

4 3 2


------------------
(program exited with code: 0)

请按任意键继续. . .


实际上,这里执行的操作称为序列解包(或可迭代对象解包):将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中。
这在使用返回元组(或其他序列或可迭代对象)的函数或方法时很有用。假设要从字典中随便获取(或删除)一个键-值对,可使用方法popitem,它随便获取一个键-值对并以元组的方式返回。接下来,可直接将返回的元组解包到两个变量中。
这让函数能够返回被打包成元组的多个值,然后通过一条赋值语句轻松地访问这些值。要解包的序列包含的元素个数必须与你在等号左边列出的目标个数相同,否则Python将引发异常。
'''
 

sc={"a":10,"b":20,"c":30}
print(sc.popitem())
k,v=sc.popitem()
print(k,v)

'''

('c', 30)
b 20


------------------
(program exited with code: 0)

请按任意键继续. . .


但是,可使用星号运算符(*)来收集多余的值,这样无需确保值和变量的个数相同。*可以放在任何位置上。
'''
 

a,b,*c=[1,2,3,4,5,6]
print(*c)
names="张三 李四 王五 马六 刘七"
i,*j,k=names.split()
print(j)

'''

3 4 5 6
['李四', '王五', '马六']


------------------
(program exited with code: 0)

请按任意键继续. . .


5.2.2链式赋值
链式赋值是一种快捷方式,用于将多个变量关联到同一个值,形如:x=y=z=modeFun()
5.2.3 增强赋值
即:x+=2,x*=3,x/=1等等。

5.3代码块
在有些编程语言中代码块是用一对大括号({})表示的,在python中代码块是通过缩进代码(即在前面加空格)来创建的。使用冒号:指出接下来是一个代码块,并将该代码块中的每行代码都缩进相同的程度。发现缩进量与之前相同时,你就知道当前代码块到此结束了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值