Coursera Python学习笔记(二)数据结构

String

  • python3中,所有不同语言的字符串都是Unicode
  • fruit = 'banana'    fruit[0] = ' b'   fruit[0:4]  = 'bana',  我们不可以用 fruit[0] = 'B' 来修改字符串,但是List可以
  • len(fruit)  #字符串长度
  • for letter in fruit: #输出这个字符串中的所有字符
  • if letter == 'a': #可以用等号来判断字符或字符串是否相等
  • after = before + 'aaa' #字符串拼接(拼接后中间没有空格)
  • if 'f' in fruit  :True  # 用in可以来判断字符串里是否有某个字符(或多个字符)
  • 字符串比较: word == 'banana' 一个一个字符串比较,word <(>)  'banana' 按照字母序判断 注意大写小于小写
  • dir(fruit) #会输出fruit这个字符串python 内置的各种Methods.比如fruit.lower()就是一个method.

  • capitalize() 首字母大写 、str.find('a') 如果没有找到返回-1、str.replace('a','b')用b替换所有的a、lstrip、rstrip、strip去掉str左边,右边,两边的whitespaces、startswith()\endswith()判断整个字符串的开头字符

File

  • fhand = open(filename,mode)   mode:‘r’  filename是一个string

  • 这个fhand并不是真的读取了文件中的所有内容,而是可以manipulate文件的一个connection,可以看做是a sequence of strings,每一个string就是文件中的一行。

handle在内存里,把secondary memory中的内容和我们的python文件连接起来了,open/read/write/close就是一系列operation。

  • 要输出文件中的每一行,可以这样子:for line in fhand:print(line)
  • content= fhand.read()     len(content)就是文件中所有的字符数 content[:20]即文件前20个字符
  • if not 'abc' in line/ if line startswith('From:') .....     可以根据自己需要筛选出自己要的那些行
  • 一般文件操作都要有try,except操作 try:..... except:....quit()
  • 换行符\n:(一种whitespace whitespace就是那些看不见的比如\n,\r...)

List

  • 有趣的一件事:,浮点数are not always perfectly represented inside of the computer
  • range(10) :生成一个list (a list of numbers that range from zero to one less than the parameter)   
  • List拼接:① a = [1,2,3]  b = [4,5,6] , c = a+b = [1,2,3,4,5,6]  ② c.append('888')  c = [1,2,3,4,5,6,'888']  c.append(888) c = [1,2,3,4,5,6,888]
  • List分割: 
  • 初始化一个空List:stuff = list() 或 stuff  = []
  • 判断List中是否有某字符:9 in c:False 、2 not in c: False
  • List自带有sort方法:c.sort()
  • List还有一些处理数值的方法:,不过这些内置的方法在数据量比较大的时候其实效率不高.
  • 把字符串切割成List:

Dictionary

  • List与Dictionary的不同点:。因为字典里的元素没有顺序,所以字典中的元素需要有label~也就是key
  • 初始化:purse = dict()     purse['money'] = 12(赋值)    空字典:purse = {}
  • 字典的应用:① 计多个元素出现的次数
  • 判断一个value是否在字典里:if ‘money’ in purse
  • 不重复地向字典中添加元素:
  • .get()方法:      update的同时可以create: (背景是计算一段文本中每个单词的出现次数)
  • 获取字典的key和value的List:                                  循环输出key和value值:
  • 使用字典计算文件中的单词出现次数:

Tuple

  • 元组是不可变长的(immutable)
  • 元组比较高效,当构造临时变量的时候用元组比较好
  • 元组可以多元素赋值:
  • 将字典中内容保存为元组列表:
  • 元组是可比较的(字母比较根据首字母):
  • 用元组对字典内容排序:根据key排序: 根据value排序:  更简洁的写法:
  • 计算文件中出现次数前十位的单词及其数量:
  •  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 很抱歉,我作为AI语言模型,不能提供Coursera Python课程的作业答案。这是违反学术诚信的行为,也不利于您的学习和成长。建议您自己认真学习课程内容,努力完成作业,这样才能真正掌握知识和技能。如果您遇到了具体的问题,可以在相关的论坛或社区中寻求帮助和解答。 ### 回答2: Coursera Python课程是一门非常好的在线编程课程,非常适合初学者学习Python编程语言。Coursera Python课程作业答案可以为学生提供实践机会,有助于加深对Python语言的理解和应用,从而更好地掌握程序设计的基本概念和技巧。下面是对Coursera Python课程作业一些问题的回答和注意事项: 1. 关于作业难度:Coursera Python课程作业包含一系列阶段性的任务,每个任务包含了几个小问题,从最初的变量和运算符到循环语句,条件语句、文件操作和函数等,每个任务都需要进行多次练习和掌握。 2. 提交作业:Coursera Python课程通常在每个章节末尾设有作业,学生需要按照作业要求完成编程代码并上传至网站系统。提交作业时需要注意格式,必须按照指定格式提交。 3. 作业查重:Coursera Python 课程设计了作业查重机制,以确保学生作业的独立性和公正性。因此,不要抄袭他人的代码,以免被系统识别为作弊行为,影响学习成果。 4. 关于作业反馈:Coursera Python课程在提交作业后,系统会自动给出反馈,反馈包括对正确和错误的提示和评价。学生可以根据反馈进行调整和改进,加深对Python编程的理解。 总之,Coursera Python课程作业答案的目的是为了帮助学生理解和掌握Python编程技巧,这需要每一个学生不断的练习和实践。通过不断学习和练习,我们可以逐步掌握Python编程技巧,提高编程效率和代码质量。 ### 回答3: 作为一名AI,我很愿意回答这个问题。 Coursera上的Python课程包含了许多可供练习的作业,包括文本处理、数据清理、编写游戏等等。以下是关于其中一些作业的一些答案和解释: 1. "Rock-Paper-Scissors-Lizard-Spock"游戏 这个游戏是基于"石头、剪刀、布"的游戏扩展改进而来。在这个游戏中,选手选择其中一个物品(石头、剪刀、布、蜥蜴或史波克),并根据一定的规则来决出胜负。对于这个作业,需要编写一个程序,从用户那里获取输入,并将其与计算机的随机选择进行比较以决定胜负。 2. "邮件文本处理"作业 这个作业涉及到使用Python编写代码来清理和分析大量的电子邮件数据。在此过程中,需要删除掉停用词、标点符号和数字,并计算每个单词出现的频率。 3. "单词云"作业 这个作业涉及到使用Python编写代码来创建单词云。在这个作业中,需要对输入的文本进行预处理,删除掉停止词、标点符号和数字,并计算每个单词在文本中出现的频率。最后,使用Python的WordCloud库,将这些信息传递给WordCloud对象,以创建一个漂亮的、基于用户输入的单词云。 这些只是几个例子,实际上CourseraPython课程涵盖了更多的主题,包括数据科学、机器学习、人工智能等等。希望这些信息能够帮助你更好地掌握Python

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Algorithm_goddness

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值