- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 python 相当陌生,所以我提前为没有最佳代码而道歉:)
无论如何,我正在尝试使用 matplotlib 包做一些绘图,目前处于此位置:
import os
import numpy as np
import matplotlib.pyplot as plt
import re
PATH_TO_YDATA1 = '401\PTV-06'
PATH_TO_YDATA2 = '401\PTV-11'
PATH_TO_YDATA3 = '401\PTV-16'
PATH_TO_YDATA4 = '401\PTV-21'
PATH_TO_YDATA5 = '401\PTV-26'
PATH_TO_YDATA6 = '401\PTV-31'
PATH_TO_YDATA7 = '401\PTV-36'
PATH_TO_YDATA8 = '401\PTV-REF'
x = np.loadtxt('401\dosex.txt')*1.1
path = [1, 2, 3, 4, 5, 6, 7, 8]
for pathnumber in path:
pathname = "%s%d" %("PATH_TO_YDATA", pathnumber)
print pathname
for f in sorted(os.listdir(pathname), key=lambda f: int(f.split('-')[-2])):
y = np.loadtxt(pathname + '/' + f)
if int(f.split('-')[-2]) < 90:
plt.plot(x, y*100, color='#70ad47', linestyle='dashed', linewidth=1.0, label=f.split('-')[-2] + '/' + str(360 - int(f.split('-')[-2])))
elif int(f.split('-')[-2]) == 90:
plt.plot(x, y * 100, color='#5b9bd5', linestyle='solid', linewidth=2.0, label=f.split('-')[-2] + '/' + str(360 - int(f.split('-')[-2])))
elif int(f.split('-')[-2]) > 90:
plt.plot(x, y * 100, color='#ed7d31', linestyle='dashed', linewidth=1.0, label=f.split('-')[-2] + '/' + str(360 - int(f.split('-')[-2])))
plt.subplot(2, 4, 1)
plt.axis([0, 100, 0, 100])
plt.grid(True)
plt.title(re.split('[- .]', f)[-2])
plt.plot((77, 77), (0, 100), 'k-')
plt.show()
我知道也可以循环遍历 PATH_TO_YDATA# = ...
而不是 8 行。但我只是一次迈出一步:)
Nopw,我的问题是,在“打印路径名”行,我实际上在第一个循环中得到了 PATH_TO_YDATA1
的输出,然后它就停止并出现错误:
WindowsError: [Error 3] The system cannot find the path specified: 'PATH_TO_YDATA1/*.*'
而且我知道,如果我只在两个地方输入 PATH_TO_YDATA1
而不是路径名,代码就可以工作。所以我的猜测是,它与文件夹路径有关,可能不是字符串或其他东西。但是,我似乎无法弄清楚如何将其变成“不是字符串”,以便代码将其读取为路径目录,而不仅仅是一些随机文本。
所以基本上,如果我手动输入 PATH_TO_YDATA#
而不是使用循环路径名,代码就会工作,因此缺陷出现在路径名循环处。
提前致谢!
最佳答案
在循环中,pathname
并不是指您之前定义的变量,它只是一个字符串。要从包含变量名称的字符串中获取变量的值(实际路径),可以使用eval(pathname)
。例如:
PATH_TO_YDATA1 = '401\PTV-06'
PATH_TO_YDATA2 = '401\PTV-11'
PATH_TO_YDATA3 = '401\PTV-16'
path = [1,2,3]
for pathnumber in path:
path = "%s%d"%("PATH_TO_YDATA",pathnumber)
print(path, eval(path))
打印:
PATH_TO_YDATA1 401\PTV-06
PATH_TO_YDATA2 401\PTV-11
PATH_TO_YDATA3 401\PTV-16
关于python - 循环输入目录名称(字符串错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38198137/
如何使用 SPListCollection.Add(String, String, String, String, Int32, String, SPListTemplate.QuickLaunchO
我刚刚开始使用 C++ 并且对 C# 有一些经验,所以我有一些一般的编程经验。然而,似乎我马上就被击落了。我试过在谷歌上寻找,以免浪费任何人的时间,但没有结果。 int main(int argc,
这个问题已经有答案了: In Java 8 how do I transform a Map to another Map using a lambda? (8 个回答) Convert a Map>
我正在使用 node + typescript 和集成的 swagger 进行 API 调用。我 Swagger 提出以下要求 http://localhost:3033/employees/sear
我是 C++ 容器模板的新手。我收集了一些记录。每条记录都有一个唯一的名称,以及一个字段/值对列表。将按名称访问记录。字段/值对的顺序很重要。因此我设计如下: typedef string
我需要这两种方法,但j2me没有,我找到了一个replaceall();但这是 replaceall(string,string,string); 第二个方法是SringBuffer但在j2me中它没
If string is an alias of String in the .net framework为什么会发生这种情况,我应该如何解释它: type JustAString = string
我有两个列表(或字符串):一个大,另一个小。 我想检查较大的(A)是否包含小的(B)。 我的期望如下: 案例 1. B 是 A 的子集 A = [1,2,3] B = [1,2] contains(A
我有一个似乎无法解决的小问题。 这里...我有一个像这样创建的输入... var input = $(''); 如果我这样做......一切都很好 $(this).append(input); 如果我
我有以下代码片段 string[] lines = objects.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.No
这可能真的很简单,但我已经坚持了一段时间了。 我正在尝试输出一个字符串,然后输出一个带有两位小数的 double ,后跟另一个字符串,这是我的代码。 System.out.printf("成本:%.2
以下是 Cloud Firestore 列表查询中的示例之一 citiesRef.where("state", ">=", "CA").where("state", "= 字符串,我们在Stack O
我正在尝试检查一个字符串是否包含在另一个字符串中。后面的代码非常简单。我怎样才能在 jquery 中做到这一点? function deleteRow(locName, locID) { if
这个问题在这里已经有了答案: How to implement big int in C++ (14 个答案) 关闭 9 年前。 我有 2 个字符串,都只包含数字。这些数字大于 uint64_t 的
我有一个带有自定义转换器的 Dozer 映射: com.xyz.Customer com.xyz.CustomerDAO customerName
这个问题在这里已经有了答案: How do I compare strings in Java? (23 个回答) 关闭 6 年前。 我想了解字符串池的工作原理以及一个字符串等于另一个字符串的规则是
我已阅读 this问题和其他一些问题。但它们与我的问题有些无关 对于 UILabel 如果你不指定 ? 或 ! 你会得到这样的错误: @IBOutlet property has non-option
这两种方法中哪一种在理论上更快,为什么? (指向字符串的指针必须是常量。) destination[count] 和 *destination++ 之间的确切区别是什么? destination[co
This question already has answers here: Closed 11 years ago. Possible Duplicates: Is String.Format a
我有一个Stream一个文件的,现在我想将相同的单词组合成 Map这很重要,这个词在 Stream 中出现的频率. 我知道我必须使用 collect(Collectors.groupingBy(..)
我是一名优秀的程序员,十分优秀!