(1)路径问题

open一个同py文件同一个目录的文件的时候,用以下:

txt = open('/filtered_words.txt','rb')
words = txt.readline()
filtered = []
for word in words:
filtered.append(word)
txt.close()
print(filtered) 会报错
FileNotFoundError: [Errno 2] No such file or directory: '/filtered_words.txt' 这里写错了一个地方,应该写成
txt = open('filtered_words.txt','rb')
也可利用绝对路径 txt = open('E:\\python_project\\test\github\\filtered_words.txt','rb')
这样也不会报错
用反斜杠,这样也不会报错 txt = open('E:/python_project/test/github/filtered_words.txt','rb') (3)打开文件格式 文档的内容是汉字,用utf-8格式,如果用rb权限open文件,汉字打印出来会变成数字 txt = open('filtered_words.txt','rb')
words = txt.readline()
打印结果是:
[229, 140, 151, 228, 186, 172, 13, 10] 用r权限open会报错 UnicodeDecodeError: 'gbk' codec can't decode byte 0x98 in position 16: illegal multibyte sequence
在open的时候,加一个编码 txt = open('filtered_words.txt','r',encoding='UTF-8')
words = txt.readline()
打印出来的结果是
['北', '京', '\n'] 把readline换成read函数,打印结果是 ['北', '京', '\n', '程', '序', '员', '\n', '公', '务', '员'] 自行百度了read()、readline()、readlines()的区别,最后代码整理 txt = open('filtered_words.txt','rb',encoding='UTF-8')
wor = txt.readlines()
filtered = []
for word in wor:
word = word.strip('\n')
filtered.append(word)
print(word)
txt.close()
print(filtered)
打印结果是['北京', '程序员', '公务员'] 最终代码如下:
class senseWord():
def __init__(self):
self.list = []
file = open('filtered_words.txt','r',encoding='UTF-8')
words = file.readlines()
for word in words:
word = word.strip('\n')
self.list.append(word) def checkwords(self,str):
if str in self.list:
return True
else:
return False if __name__ == '__main__':
sense = senseWord()
str = input('input a string')
if sense.checkwords(str) == True:
print('freedom')
else:

————————————————

python open 函数的一些坑的更多相关文章

  1. 关于python数据序列化的那些坑

    -----世界上本来没那么多坑,python更新到3以后坑就多了 无论哪一门语言开发,都离不了数据储存与解析,除了跨平台性极好的xml和json之外,python要提到的还有自身最常用pickle模块 ...

  2. python基础——函数的参数

    python基础——函数的参数 定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了.对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复 ...

  3. Python基础(函数,函数的定义,函数的调用,函数的参数,递归函数)

    1.函数 我们知道圆的面积计算公式为: S = πr2 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = ...

  4. Python(函数的参数)

    函数参数的使用 def foo(x,y): pass foo(1,2) 形参:就是变量名 实参:就是变量值 形参:位置形参,默认参数,*args,命名关键字参数,**kwargs 实参: 按位置传值的 ...

  5. Python进阶-函数默认参数

    Python进阶-函数默认参数 写在前面 如非特别说明,下文均基于Python3 一.默认参数 python为了简化函数的调用,提供了默认参数机制: def pow(x, n = 2): r = 1 ...

  6. python 8 函数

    调用函数 Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数.可以直接从Python的官方网站查看文档: 也可以在交 ...

  7. python的函数

    函数一词起源于数学,但是在编程中的函数和数学中的有很大不同.编程中的函数式组织好的,可重复使用的,用于实现单一功能或相关联功能的代码块. 我们在学习过程中已经使用过一些python内建的函数,如pri ...

  8. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  9. python split()函数

    Python split()函数 函数原型: split([char][, num])默认用空格分割,参数char为分割字符,num为分割次数,即分割成(num+1)个字符串 1.按某一个字符分割. ...

随机推荐

  1. 顶级Apache Kafka术语和概念

    1.卡夫卡术语 基本上,Kafka架构  包含很少的关键术语,如主题,制作人,消费者, 经纪人等等.要详细了解Apache Kafka,我们必须首先理解这些关键术语.因此,在本文“Kafka术语”中, ...

  2. Java基础笔试练习(七)

    1.下列程序执行后结果为( )? class A { public int func1(int a, int b) { return a - b; } } class B extends A { pu ...

  3. Django模型层之更多操作

    Django模型层之更多操作 一 .ORM字段 1.1 常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为 ...

  4. 在springMVC的controller中获取request,response对象的一个方法

    ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttr ...

  5. [洛谷P4052][JSOI2007]文本生成器

    题目大意:有$n$个字符串$s_i$,问有多少个长度为$m$的字符串至少包含$n$个字符串中的一个,字符集 A-Z .$s_i,m\leqslant100,n\leqslant60$ 题解:$AC$自 ...

  6. springboot读取系统级环境变量,和读写系统属性以及unittest来获取环境变量的方法

    环境变量的读取以及系统属性的设置 环境变量只能读取,不能修改,系统属性可以修改 系统变量的读取方式: System.getEnv() 系统属性有多重读取和修改方式: 其修改方式为: 读取系统属性: @ ...

  7. 【转载】Windows安装Redis并添加本地自启动服务

    概况 在windows本地搭建redis缓存,添加到本地计算机的服务中,保证每次开机自动启动服务. 第一步:下载redis(我的是计算机win10,64位) https://github.com/Mi ...

  8. C#中的Process类使用

    有时候,用户在进行某个操作时,程序运行到某个阶段突然崩溃,我们需要让程序自动重启,重新执行用户之前的操作,当发现主程序还存在,就重启用户执行的附加程序.这时候Process就派上了用场. 控制台测试用 ...

  9. C# vb实现浮雕特效滤镜效果

    在.net中,如何简单快捷地实现Photoshop滤镜组中的浮雕效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一步 ...

  10. python 直角图标生成圆角图标

    参考链接:https://stackoverflow.com/questions/11287402/how-to-round-corner-a-logo-without-white-backgroun ...