博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Chaquopy读取Android项目python目录下的文件
阅读量:2085 次
发布时间:2019-04-29

本文共 2025 字,大约阅读时间需要 6 分钟。

Chaquopy在AS里初始化之后,main文件夹下会出现一个python文件夹,如下所示:

在这里插入图片描述
然后我在python文件夹下创建了一个hello.py文件,并且在python文件夹下放置了一个CSV文件。
一开始读取方式为:

import pandas as pdfrom mlxtend.preprocessing import TransactionEncoderfrom mlxtend.frequent_patterns import association_rulesfrom mlxtend.frequent_patterns import apriorifrom os.path import dirname, joindef finals():    df = pd.read_csv("df_politics.csv" encoding='utf8', dtype=str)    df_arr = df.values.tolist()

结果报错如下:

Caused by: com.chaquo.python.PyException: FileNotFoundError: [Errno 2] File b'df_politics.csv' does not exist: b'df_politics.csv'        at 
.pandas._libs.parsers.TextReader._setup_parser_source(parsers.pyx:689) at
.pandas._libs.parsers.TextReader.__cinit__(parsers.pyx:382) at
.pandas.io.parsers.__init__(parsers.py:1917) at
.pandas.io.parsers._make_engine(parsers.py:1135) at
.pandas.io.parsers.__init__(parsers.py:895) at
.pandas.io.parsers._read(parsers.py:457) at
.pandas.io.parsers.parser_f(parsers.py:685) at
.hello.finals(hello.py:10)

可以明显看到是FileNotFoundError错误。

改正如下:

import pandas as pdfrom mlxtend.preprocessing import TransactionEncoderfrom mlxtend.frequent_patterns import association_rulesfrom mlxtend.frequent_patterns import apriorifrom os.path import dirname, joindef finals():    filename = join(dirname(__file__), "df_politics.csv")    print(filename)    df = pd.read_csv(filename, encoding='utf8', dtype=str)    df_arr = df.values.tolist()

其中文件名为:

filename = join(dirname(__file__), "df_politics.csv")

输出一下filename:

/data/user/0/com.example.pythontest/files/chaquopy/AssetFinder/app/df_politics.csv

查Chaquopy官方文档:

在Chaquopy 6.3.0和更高版本中,您可以使用相对于__file__的路径访问数据文件。例如,如果数据文件与Python文件位于同一目录中:

from os.path import dirname, joinfilename = join(dirname(__file__), "df_politics.csv")

如果数据文件和Python文件位于不同的目录中,请相应地更改相对路径。例如,如果Python文件为:

src/main/python/alpha/hello.py

数据文件为:

src/main/python/bravo/df_politics.csv

则替换df_politics.csv为:

../bravo/df_politics.csv

转载地址:http://omiqf.baihongyu.com/

你可能感兴趣的文章
【LEETCODE】53-Maximum Subarray
查看>>
【LEETCODE】215-Kth Largest Element in an Array
查看>>
【LEETCODE】312-Burst Balloons
查看>>
【LEETCODE】232-Implement Queue using Stacks
查看>>
【LEETCODE】225-Implement Stack using Queues
查看>>
【LEETCODE】155-Min Stack
查看>>
【LEETCODE】20-Valid Parentheses
查看>>
【LEETCODE】290-Word Pattern
查看>>
【LEETCODE】36-Valid Sudoku
查看>>
【LEETCODE】205-Isomorphic Strings
查看>>
【LEETCODE】204-Count Primes
查看>>
【LEETCODE】228-Summary Ranges
查看>>
【LEETCODE】27-Remove Element
查看>>
【LEETCODE】66-Plus One
查看>>
【LEETCODE】26-Remove Duplicates from Sorted Array
查看>>
【LEETCODE】118-Pascal's Triangle
查看>>
【LEETCODE】119-Pascal's Triangle II
查看>>
word2vec 模型思想和代码实现
查看>>
怎样做情感分析
查看>>
用深度神经网络处理NER命名实体识别问题
查看>>