随记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的更多相关文章

随机推荐

  1. Python学习-赋值、浅copy和深copy

    Python Copy: 在Python语言中,分为浅拷贝和深拷贝两种形式,也就是官方文档中的Shadow copy和Deep copy.在对简单的对象(object)进行复制时,两者没有区别,如下面 ...

  2. 用idea将javaweb项目部署到tomcat

    之前在网上找的一些web项目都是用eclipse开发的,想把这些项目导入到idea中,然后部署到tomcat中,在网上找了很多教程,很多都不靠谱,发现网上很多配置都是多余的,其实很多只需要按idea默 ...

  3. java 并发时使用条件变量--Condition

    lock--unlock的方式在实际中使用较少,一般使用synchronized获取对象的内部锁替代,但是lock--unlock对了解synchronized有很大的帮助. 创建一个bank对象用于 ...

  4. systemtap 安装试用

    1. 安装 yum install -y systemtap systemtap-runtime 2. 环境准备    a. 自动安装依赖 stap-prep b. 手动安装依赖 kernel-deb ...

  5. visibility:hidden和display:none的区别

    大家知道,如果想让某一段代码在前台不显示,最简单的方法是用css的display:none即可,这样下边的内容就自动上移或右侧的左移来填补这个空隙. 但特殊情况下我们只需要隐藏这个元素,但它的位置不能 ...

  6. bzoj4557侦查守卫

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4557 树形DP.和“河流”有点像,也有一个类似“承诺”的东西. 就是用 f 表示当前节点向下 ...

  7. Unit04: 实战技巧 、 登录

    Unit04: 实战技巧 . 登录 使用注解方式简化Unit04的小程序. 1. 基于注解的springmvc应用程序的开发 (1)编程步骤 step1. 导包. step2. 添加spring配置文 ...

  8. 干货:这也许是最全面透彻的一篇RabbitMQ指南!

    本文大纲: RabbitMQ 历史 RabbitMQ 应用场景 RabbitMQ 系统架构 RabbitMQ 基本概念 RabbitMQ 细节阐明 历史-从开始到现在 RabbitMQ是一个Erlan ...

  9. codechef January Lunchtime 2017简要题解

    题目地址https://www.codechef.com/LTIME44 Nothing in Common 签到题,随便写个求暴力交集就行了 Sealing up 完全背包算出得到长度≥x的最小花费 ...

  10. android 文件上传,中文utf-8编码

    要上传文件到后台的php服务器,服务器能收到中文,手机发送过去,却只能收到一堆转了UTF-8的编码(就是要decode后才是中文的编码).android这边上传文件通常是用stream方式上传的,用M ...