xy1770 发表于 2020-7-19 17:22:06

一维数据的读入处理

本帖最后由 xy1770 于 2020-7-19 18:00 编辑

"""
一维数据的读入处理
"""

txt = open('//Users//h//Desktop//f.txt').read()
ls1 = txt.split()   # 根据分隔信息(此处为空格),将每一个元素变成列表
ls2 = txt.split('-')
print(ls1,'\n',ls2)
f.close# 将列表关闭

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-30-7a120c6caca4> in <module>
      7 ls2 = txt.split('-')
      8 print(ls1,'\n',ls2)
----> 9 f.close# 将列表关闭

NameError: name 'f' is not defined


【1】最后关闭程序,怎么关闭
【2】我想同时用 空格 和 -符号 作为分割数据的标准,怎么设置同时


设置的最佳答案有误

正确写法:先将 空格 用 -符号 替换,然后再用 空格作为分隔信息
具体如下:
"""
一维数据的读入处理2
"""

txt = open('//Users//sunzheng//Desktop//f.txt').read()

txt = txt.replace(' ','-')   
ls = txt.split('-')
print(ls)

f.close()

Twilight6 发表于 2020-7-19 17:29:44


【1】最后关闭程序,怎么关闭

不需要你关闭了,你 open 的文件对象被垃圾回收机制给回收了,因为你是 open 后直接 read 赋值了

【2】我想同时用 空格 和 -符号 作为分割数据的标准,怎么设置同时?

同时应该不行吧,只能分两次

xy1770 发表于 2020-7-19 17:35:10

Twilight6 发表于 2020-7-19 17:29
不需要你关闭了,你 open 的文件对象被垃圾回收机制给回收了,因为你是 open 后直接 read 赋值了

...

分两次的话要怎么写?

陈尚涵 发表于 2020-7-19 17:36:08


第一个问题的答案:哎呀,你学C语言学多了吧?那个不用手动关闭的。
第二个问题的答案:同时吗?两个列表加在一起不就行了??贴代码
ls = txt.split() + txt.split('-')

哎呀,你看我都帮你答了,你总得给我设置个最佳吧{:10_256:}

Twilight6 发表于 2020-7-19 17:36:32

xy1770 发表于 2020-7-19 17:35
分两次的话要怎么写?

分两次的话,第一次的split ,然后第二次要用 for 循环第一次的结果,再split ,因为 split 返回的是列表,所以需要遍历了

Twilight6 发表于 2020-7-19 17:37:00

陈尚涵 发表于 2020-7-19 17:36
第一个问题的答案:哎呀,你学C语言学多了吧?那个不用手动关闭的。
第二个问题的答案:同时吗?两个列 ...

你这样加会重复元素

xy1770 发表于 2020-7-19 17:39:39

陈尚涵 发表于 2020-7-19 17:36
第一个问题的答案:哎呀,你学C语言学多了吧?那个不用手动关闭的。
第二个问题的答案:同时吗?两个列 ...

试了下确实会重复元素 {:10_282:}

xy1770 发表于 2020-7-19 17:43:37

Twilight6 发表于 2020-7-19 17:36
分两次的话,第一次的split ,然后第二次要用 for 循环第一次的结果,再split ,因为 split 返回的是列表 ...

具体怎么写啊
页: [1]
查看完整版本: 一维数据的读入处理