191012 python3关于空格打印、赋值、+=符号的小坑
1. python3中,直接打印空格不显示,不论是pycharm,cmd命令窗口,还是linux中,都有尝试,但是空格' '不能显示出来:
# 打印菱形,只能用center方法
for i in range(0,5):
for y in range(0,5-i):
w = ' '
print(w,end="")
s = '* ' * i
print(s)
for i in range(0,5):
for x in range(0,i):
w = ' '
print(w, end="")
t = '* ' * (5-i)
print(t)

2. a,b=b,a+b(a,b会随循环变动)不等同a=b,b=a+b(a,b会随循环固定)举例:
2.1代码
a,b,s = 2.0, 1.0, 0.0
for i in range(5):
s += a/b
b= a
a = a+b
print(s,'\t',end='')
print()
执行结果:2.0 4.0 6.0 8.0 10.0
在2.1这里可以修改代码,加入一个变量(如果不加,a,b就被当作不可变量),也可以达到想要的效果:
a,b,s = 2.0, 1.0, 0.0
for i in range(5):
s += a/b
t = a
a = a+b
b = t
print(s,'\t',end='')
print()
执行结果:2.00 3.50 5.17 6.77 8.39
2.2代码
a,b,s = 2.0, 1.0, 0.0
for i in range(5):
s += a/b
b,a= a,b+a # 相当于 t=(a,a+b),b=t[0],a=t[1]
print('%.2f\t'%s,end='')
print()
执行结果:2.00 3.50 5.17 6.77 8.39
3 s+=i不等同于s=s+i(只针对列表适用,不适用str,set,tuple,int);
与2相似,在某些情况下两个算式是成立的,但也有不成立的情况。
l1 = [i for i in range(3)]
l2 = l1
l2+=[3]
print(l1,l2)
执行结果:[0, 1, 2, 3] [0, 1, 2, 3]
在+=中,与l2相关的内容都发生变动,都被当作可变量;
l1 = [i for i in range(3)]
l2 = l1
l2=l2+[3]
print(l1,l2)
执行结果:[0, 1, 2] [0, 1, 2, 3]
参考链接:https://blog.csdn.net/zxmzhaoxuan/article/details/82465848
191012 python3关于空格打印、赋值、+=符号的小坑的更多相关文章
- Python3安装与使用urllib2包之小坑
Python3 安装urllib2包之小坑 Python3.6.6或者说python3.x找不到urllib2语法问题修改之后,会报一个没有安装urllib2的包的错误. 通过pip install ...
- js赋值符号“=”的小例子
var obj1={x:5}; var obj2=obj1; obj1.a=obj1={x:6}; console.log(obj1.a); console.log(obj2.a); 为什么obj1. ...
- liunx开源打印驱动foo2zjs编译小坑
在编译foo2zjs时出现 ## Dependencies...# *** *** Error: gs is not installed! *** *** Install ghostscript (g ...
- HTML 空格的表示符号 nbsp / ensp / emsp 的区别
HTML 空格的表示符号 nbsp / ensp / emsp 的区别? 半角的不断行的空白格(推荐使用) 半角的空格 全角的空格
- html使用空格的替代符号
替代符号就是在需要显示空格的地方加入替代符号,这些符号会被浏览器解释为空格显示. 空格的替代符号有以下几种: 名称 编号 描述 不断行的空白(1个字符宽度) 半个空白(1个字符宽度) ...
- 【Makefile】Makefile中的赋值符号=、:=、?=、+=
Makefile中主要有四个赋值符号: = 是最基本的赋值:= 是覆盖之前的值?= 是如果没有被赋值过就赋予等号后面的值+= 是添加等号后面的值 1.“=” “=”赋值:make会将整个makefil ...
- JS规则 保持先后顺序(操作符优先级)操作符之间的优先级(高到低): 算术操作符 → 比较操作符 → 逻辑操作符 → "="赋值符号
保持先后顺序(操作符优先级) 我们都知道,除法.乘法等操作符的优先级比加法和减法高,例如: var numa=3; var numb=6 jq= numa + 30 / 2 - numb * 3; / ...
- 记一次select2赋值动态数组的坑
var roles = $td.eq(3).text().split(","); var arr = []; //循环去除每个值前后的空格,否则下拉框赋值回显出错for(var i ...
- python3下安装aiohttp遇到过的那些坑
python3下安装aiohttp遇到过的那些坑 最近需要用到aiohttp这个库,在安装过程中遇到很多坑.google.baidu后,依然没有找到合适的解决方案. 后来通过去python官方的PyP ...
随机推荐
- Mysql关键字之Group By(一)
原文地址,优先更新https://hhe0.github.io group by 是一个我们在日常工作学习过程中经常遇到的一个Mysql关键字.现总结其用法如下,内容会不断补充,出现错误欢迎批评指正. ...
- Python 初级 6 循环 (二)
一.复习 1 for循环 for looper in [1, 2, 3, 4]: print("hello") 1) 每次循环开始,会依次把列表中的数按顺序赋值给looper,第一 ...
- [LeetCode] 224. Basic Calculator 基本计算器
Implement a basic calculator to evaluate a simple expression string. The expression string may conta ...
- ucos III中任务之间的数据通信和任务划分
1. 如果将关系密切(比如两个任务之间需要经常收发数据)的若干功能分别用不同的任务来实现,则需要进行大量的任务之间数据通信和同步通信,这系统来说是一个很大的负担.因此应该将关系密切的若干功能组合成一个 ...
- 【SSH进阶之路】Hibernate映射——多对多关联映射(八)
上篇博文[SSH进阶之路]Hibernate映射——一对多关联映射(七),我们介绍了一对多关联映射,它是多对多关联映射的基础. 多对多映射是现实生活中最常见的映射,也是最容易理解的映射.废话少说,直接 ...
- python文件夹操作
1.遍历文件夹下所有文件2.将后缀为.DCM的文件复制到指定文件夹 import os import shutil def all_path(dirname): result = []#所有的文件 f ...
- Linux学习-基本命令文件操作
终端 1.多个终端 连接linux的客户端可以理解为终端. 命令:tty查看终端 2.不同终端之间的通讯 [root@wyx wyx]# echo 123 > /dev/pts/1 把123发给 ...
- 1.jvm思维导图
点击图片可查看高清图
- PAT(B) 1067 试密码(Java)
题目链接:1067 试密码 (20 point(s)) 题目描述 当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格 ...
- DS 图解归并排序
经典排序三剑客: 归并,堆排,快排. 今天,图解归并,一步步带你手撕代码~ 归并排序,是采用"分而治之"思想的一个典型应用. 分治法精髓: 1.分 --- 将问题分解成若干个规模更 ...