python开发_++i,i += 1的区分
在很多编程语言(C/C++,Java等)中我们都会碰到这样的语法:
1 int i = 0;
2 ++ i; // -- i;
这样的语法在上述编程语言中可以实现自增(减),在python中也支持这样的语法,不过在python中
这样的用法不是用来自增(减),而是实现数学中的符号运算操作:

1 i = 2
2 ++ i #输出:2
3 +(+i) #输出:2
4 -(+i) #输出:-2
5 +(-i) #输出:-2
6 -(-i) #输出:2

在python中,如果要实现自增(减),应该这样做:
1 i = 2
2 i += 1 #实现自增
3 print(i) #输出:3
4 i -= 1 #实现自减
5 print(i) #输出:2
下面看看我做的demo,我想你就会明白
运行效果:
=============================================================
代码部分:
=============================================================

1 #python ++i,-+i,+-i.--i
2
3 #Author : Hongten
4 #Mailto : hongtenzone@foxmail.com
5 #Blog : http://www.cnblogs.com/hongten
6 #QQ : 648719819
7 #Version : 1.0
8 #Create : 2013-08-30
9
10 #初始化所需列表
11 testA = []
12 testB = []
13 testC = []
14 testD = []
15 testE = []
16 testF = []
17 testG = []
18 testH = []
19
20 for a in range(-5, 5, 1):
21 testA.append(++(a)) #++a
22 testB.append(-+(a)) #-+a
23 testC.append(+-(a)) #+-a
24 testD.append(--(a)) #--a
25 testE.append(+(+(a))) #+(+a)
26 testF.append(-(+(a))) #-(+a)
27 testG.append(+(-(a))) #+(-a)
28 testH.append(-(-(a))) #-(-a)
29
30 print('++i : {}'.format(testA))
31 print('+(+i) : {}'.format(testE))
32 print('可以看出:++i和+(+i)输出结果是一样的,说明他们是等效的\n')
33 print('-+i : {}'.format(testB))
34 print('-(+i) : {}'.format(testF))
35 print('可以看出:-+i和-(+i)输出结果是一样的,说明他们是等效的\n')
36 print('+-i : {}'.format(testC))
37 print('+(-i) : {}'.format(testG))
38 print('可以看出:+-i和+(-i)输出结果是一样的,说明他们是等效的\n')
39 print('--i : {}'.format(testD))
40 print('-(-i) : {}'.format(testH))
41 print('可以看出:--i和-(-i)输出结果是一样的,说明他们是等效的\n')
42
43 test_plus = []
44 test_sub = []
45
46 #使用b += 1实现自增
47 for b in range(-5, 5, 1):
48 b += 1
49 test_plus.append(b)
50
51 #使用c -= 1实现自减
52 for c in range(-5, 5, 1):
53 c -= 1
54 test_sub.append(c)
55
56 print('#' * 50)
57 print('i += 1 : {}'.format(test_plus))
58 print('i -= 1 : {}'.format(test_sub))
59 print('我们可以使用:i += 1, i -= 1来实现递增,递减。')

python开发_++i,i += 1的区分的更多相关文章
- python开发_搜索本地文件信息写入文件
功能:#在指定的盘符,如D盘,搜索出与用户给定后缀名(如:jpg,png)相关的文件 #然后把搜索出来的信息(相关文件的绝对路径),存放到用户指定的 #文件(如果文件不存在,则建立相应的文件)中 之前 ...
- python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheetahcherrypy:一个WEB frameworkctype ...
- python开发_大小写转换,首字母大写,去除特殊字符
这篇blog主要是总结我们在平常开发过程中对字符串的一些操作: #字母大小写转换 #首字母转大写 #去除字符串中特殊字符(如:'_','.',',',';'),然后再把去除后的字符串连接起来 #去除' ...
- python开发_函数的参数传递
在这个用例中,我们要讨论的是关于函数的传参问题 我所使用的python版本为3.3.2 对于函数: def fun(arg): print(arg) def main(): fun('hello,Ho ...
- python开发_类型转换convert
在python的开发过程中,难免会遇到类型转换,这里给出常见的类型转换demo: int(x [,base ]) 将x转换为一个整数 long(x [,base ]) 将x转换为一个长整数 float ...
- python开发_自己开发的一个小游戏
先看看游戏的运行效果: 看完游戏的运行情况,你可能对游戏有了一定了了解: #运行游戏后,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语 #根据玩家选择的语音,进入不同的语音环境 ...
- python开发_thread_线程_搜索本地文件
在之前的blog中,曾经写到过关于搜索本地文件的技术文章 如: java开发_快速搜索本地文件_小应用程序 python开发_搜索本地文件信息写入文件 下面说说python中关于线程来搜索本地文件 利 ...
- python开发_tkinter_获取文本框内容_给文本框添加键盘输入事件
在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...
- python开发_tkinter_单选菜单_不可用菜单操作
在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...
随机推荐
- SpringMVC学习--文件上传
简介 文件上传是web开发中常见的需求之一,springMVC将文件上传进行了集成,可以方便快捷的进行开发. springmvc中对多部件类型解析 在 页面form中提交enctype="m ...
- Java--剑指offer(4)
16.输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. a)这里首先判断两个链表中有没有空表,这个就是依据表头是否为空.然后就是比较节点值的大小,然后就是使 ...
- Fragment 与Activity之间的通信
1.Fragment-->Activity 在fragment中的onAttach()中引用Activity实现的接口实例. 2Activity-->Fragment 直接调用 3多个Fr ...
- 开发错误记录七: Failed to create JVM:error code -4
今天启动Android studio 直接报如下错误: 用 java -verion 发现并不是环境变量没配置好,而是系统分配的内存,没有达到,as 的要求一种是:重启电脑,再启动 就ok 二种是 重 ...
- Jsoup获取部分页面数据失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.
用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 请求代码如下: private static ...
- [转]Mybatis出现:无效的列类型: 1111 错误
原文地址:http://www.cnblogs.com/sdjnzqr/p/4304874.html 在使用Mybatis时,不同的xml配置文件,有的会提示:无效的列类型: 1111 比如这个sql ...
- [转]js中的时间与毫秒数互相转换
原文地址:http://blog.sina.com.cn/s/blog_77cb836301015icr.html [1]js毫秒时间转换成日期时间 var oldTime = (new Date ...
- Linux_rsyslogd日志服务(二)
一.rsyslogd日志统一格式 基本日志格式包含以下四列: 1.事件产生的时间 2.发生事件的服务器的主机名 3.产生事件的服务名或程序名 4.事件的具体信息 二./etc/rsyslog.conf ...
- 51nod 1422(强行YY)
1422 沙拉酱前缀 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 沙拉酱非常喜欢数字序列.这正是他要弄一个关于 ...
- mac下搭建java开发环境:eclipse+tomcat+maven
一.安装eclipse 直接下载 二.安装JDK 下载mac版专用的jdk1.7,地址如下:http://jdk7.java.net/macportpreview/, 确认java使用的版本:开一个终 ...