龙空技术网

#Python在学习18# Python中22个编程技巧(二)

梁陆薇 238

前言:

而今各位老铁们对“python将一句话重复n次输出分行”可能比较关注,咱们都想要学习一些“python将一句话重复n次输出分行”的相关知识。那么小编在网摘上收集了一些关于“python将一句话重复n次输出分行””的相关知识,希望姐妹们能喜欢,姐妹们快快来了解一下吧!

#头条创作挑战赛#

1、使用循环和else关键字

关键字else最经常与if一起使用。在一个循环中,如果循环没有提前退出,则执行else从句。关键字else对while和for循环都适用。

代码举例如下:

n=49max=6def find_divisor(n,max):    for i in range(2,max+1):        if n%i==0:            print(i, 'divides evenly into',n)            break    else:        print('No divisor found')find_divisor(n,max)

执行之后结果为:No divisor found

当调整max的值为7的时候,执行的结果为7 divides evenly into 49

2、布尔值和not运算符

非空集合和非空字符串的布尔值为TRUE,非零数值也是如此;

零长度集合和零长度字符串的布尔值为False,等于0的任何数字以及特殊值None也是如此。

3、将字符串视为字符列表

通过列表推导式和join方法来构建字符串会更加有效;

test_str=input('enter your string: ')a_list=[c.upper() for c in test_str if c.isalnum()]print(a_list== a_list[::-1])

点击运行之后,当字符串中含有大写字母的时候返回值为True,否则返回值为False

4、使用replace来消除字符

可以使用replace来快速删除字符,并通过空格占位;

如果希望一次性删除字符串中的目标字符,可以使用列表推导式

代码示例如下:

s=s.replace(' ','')#消除字符串中的空格键#a_list=[c for c in s if c not in 'aeiou']s=''.join(a_list)#消除字符串中的所有元音字符#

5、非必要,不写循环

通过Python可以直接求和,非必要不用写循环

例如:

def calc_sum(n):    return sum(range(n+1))

通过一个函数定义可以解决的问题,就不写复杂的循环

6、使用链式比较(n<x<m)

链式比较是一个可以节省工作量的方法,也可以使代码更具有可读性

if 0<a<=c>b>1:

这样的语句也是有效的!

7、用函数列表来模拟switch语句

可以将不同的函数设置为列表,根据求值赋值来调用不同的函数,也可以通过字典和函数来创建更加灵活的控制结构。

例如:

menu_dict={'load':load_fn,'save':save_fn,'exit':exit_fn,'update':update_fn}(menu_dict[selector])()

可以根据选择器中包含的字符串来调用适当的函数。

8、使用is运算符

‘==’运算符和is运算符,在比较相同的两个字符串时不一定能返回True,比较下面的两个字符串

>>>a=”

”+”And I am young and charming”

>>>b=”I am a beautiful lady And I am young and charming”

这两个字符串在使用“==”比较时,返回true;但是通过is运算符比较的时候,就会返回false,原因为在内存中a和b两个字符串并非为相同的对象。如果确定要将值与内存中唯一的对象作为比较,用is运算符就会更加准确且效率更高。

9、使用单行for循环

对于短小的for循环语句,可以在一行内书写完毕(当然个人习惯不同,也可以分行去写)

10、将多条语句压缩到一行

可以通过分号;将多行语句来放在一行,以便节省空间(非必须)

11、编写单行if/then/else语句

Ture_expr if conditional else false_expr

如果判定{conditional}为True,则执行true_expr并返回,否则执行false_expr并返回;

12、用range函数创建枚举值

可以使用apple,pineapple,banana=range(3)来为每一个水果赋值编号,以便于后面的编码。

13、合理优化代码,能用简单代码解决的,坚决不复杂化

例如这行代码:print(‘\n’.join([‘*’*40]*20))简单的几个字符就可以生成一个*号矩阵

14、用下划线分隔大数字

Python中可以通过下划线_来分隔大数字,具体规则如下:

(1)不能连续使用两个下划线;

(2)不能在数字的开头或者结尾使用下划线

(3)在小数点的任意一侧可以使用下划线

#加油!

#一点一滴的努力,未来都会有回报。

#岁月静好,不去羡慕旁人,只做好自己,花朵总会绽放。

#以上学习感悟来自于《高阶Python代码精进之路》([美]Brain Overland, John Bennett著,李辉,韩慧昌译,中国工信出版集团电子工业出版社2022年4月出版)

标签: #python将一句话重复n次输出分行