unit_2_homework
随记2018/4/23
# 找元祖中的元素,移除每个元素的空格,并查找以a或A开头,c结尾的所有元素。
# 思路:将i取出来,求得li列表中有多少个元素for i in range(len(li));然后用li[i]的方式,让每个元素的空格去掉li[i] = li[i].replace(' ', '')
tu = ('alex', ' aric', 'Alex', 'Tony') # 设置元祖
tu = list(tu) # 将元祖列表化
tu_final = [] # 设置一个新的列表
for i in range(len(tu)): # 计算列表的长度,获得i——以便下一步中,取列表里面的每一个元素
tu[i] = tu[i].replace(' ', '') # 以此取列表的每一个元素,并且去掉空格
if tu[i][0] in ['a', 'A'] and tu[i][-1] == 'c': # 如果元素的首字母在a,A中,并且末尾为c
tu_final = tu_final.append(tu[i]) #### 那么将该元素添加到设置的空列表tu_final中——这里的语法是错误的,在列表中添加.append不应该进行赋值,因为.append()这个方法执行成功之后会返回None这个值,赋值的话会赋值None给变量。
print(tu_final) # 打印tu_final
今天在这个地方出现了好几个问题:
- 对各种括号代表什么数据类型弄不清楚;
- list语法后面应该使用小括号,而不是中括号;
- python如何合并两个列表的内容;
- Python startswith()方法;
逻辑 与 或 非的优先级(and or not 优先级)。
1. python中的括号——( ),[ ],{ }
python语言最常见的括号有三种,分别是:小括号( )、中括号[ ]和大括号也叫做花括号{ }。其作用也各不相同,分别用来代表不同的python基本内置数据类型。
- 1、python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列。创建方法很简单,大多时候都是用小括号括起来的。
>>> tup = (1,2,3)
>>> tup
(1, 2, 3)
>>>
>>> ()#空元组
()
>>>
>>> 55,#一个值的元组
(55,)
- 2、python中的中括号[ ]:代表list列表数据类型,列表是一种可变的序列。其创建方法即简单又特别,像下面一样:
>>> list('python')
['p', 'y', 't', 'h', 'o', 'n']
- 3、python大括号{ }花括号:代表dict字典数据类型,字典是由键对值组组成。冒号':'分开键和值,逗号','隔开组。用大括号创建的方法如下:
>>> dic={'jon':'boy','lili':'girl'}
>>> dic
{'lili': 'girl', 'jon': 'boy'}
>>>
2. python中列表如何合并?
正如下面的代码所示,将两个列表通过+号进行拼接即可。
>>> list1 = [1,2,3,4]
>>> list2 = [5,6,7,8]
>>> list1+list2
[1, 2, 3, 4, 5, 6, 7, 8]
3. Python中startswith()方法
描述
Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。
语法
startswith()方法语法:
str.startswith(str, beg=0,end=len(string));
参数
- str -- 检测的字符串。
- strbeg -- 可选参数用于设置字符串检测的起始位置。
strend -- 可选参数用于设置字符串检测的结束位置。
返回值
如果检测到字符串则返回True,否则返回False。
实例
以下实例展示了startswith()函数的使用方法:
#!/usr/bin/python
str = "this is string example....wow!!!";
print str.startswith( 'this' );
print str.startswith( 'is', 2, 4 );
print str.startswith( 'this', 2, 4 );
以上实例输出结果如下:
true
True
False
4. 逻辑 与 或 非的优先级(and or not 优先级)
- 在不加括号时候 and优先级大于or;
- x or y 的值只可能是x或y。x为真就是x,x为假就是y;
- x and y 的值只可能是x或y。x为真就是y,x为假就是x。
显然
对于,1 or 5 and 4:先算5 and 4,5为真, 值为4。 再算1 or 4,1 为真,值为1;
对于,(1 or 5) and 4:先算1 or 5,1为真, 值为1.。再算1 and 4,1为真,值为4。
unit_2_homework的更多相关文章
随机推荐
- CAS原理分析
在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁(后面的章节还会谈到锁). 锁机制存在以下问题: (1)在多线程竞争下,加锁.释放锁会导致比较多的上下文切换和调度 ...
- Linux软连接和硬链接(转)
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...
- 1.JMeter===添加响应断言
断言即Lr中的检查点,我们在进行测试时,需要对每次请求测试的返回做检验 1.以百度做案例,添加线程组==添加HTTP请求==添加查看结果树 2.在HTTP请求下添加响应断言 注:模式匹配规则,比较常用 ...
- Android 从上层到底层-----hal层
CPU:RK3288 系统:Android 5.1 功能:上层 app 控制 led 亮灭 开发板:Firefly RK3288 led_hal.c path:hardware/rockchip/fi ...
- 安卓笔记-adb指令、打包安装
adb install -r -s xxx.apk -r重装 -s 安装到sd卡 安装软件 adb uninstall -k 包名 -k 只卸载程序不清除数据 adb ...
- FPGA图像加速解决方案来了
近日,百度云与联捷计算科技(CTAccel)共同推出基于FPGA的图像加速解决方案(CIP,CTAccel Image Processor),实现对JPEG转码JPEG.JPEG转码WebP(M6)等 ...
- 在Windows下搭建基于nginx的视频直播和点播系统
http://my.oschina.net/gaga/blog/478480 一.软件准备 由于nginx原生是为linux服务的,因此官方并没有编译好的windows版本可以下载,要在windows ...
- 【转】JMeter-Java Sampler编写范例
今天,听段念的培训,学了一下Jmeter写Java请求的过程. 根据某博文,修改其中代码的bug后,贴在下面吧:另外公司一同学Raylupas在半年前也写过关于JMeter写Java Sampler的 ...
- mysql实战优化之一:sql优化
1.选取最适用的字段属性 MySQL 可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得 ...
- Struts2的fliter与interceptor
struts2 fliter与interceptor的区别 1.拦截器是基于java反射机制的,而过滤器是基于函数回调的.2.过滤器依赖于servlet容器,而拦截器不依赖于servlet容器.3 ...