在读取文件期间,在python中将文件名作为变量传递

在读取文件期间,在python中将文件名作为变量传递,python,Python,我在以下位置有一个图像文件 'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg' 当我试图通过直接给出文件名来读取时,它会正确地读取图像 工作代码 mm = cv2.imread( r'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg' ) tt

我在以下位置有一个图像文件

'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg'
当我试图通过直接给出文件名来读取时,它会正确地读取图像

工作代码

mm = cv2.imread( r'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg' )
tt = 'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg'

mm = cv2.imread( tt )
但当我将路径作为变量传递时,它显示的是非类型对象,而不是读取文件的实际内容

不工作代码

mm = cv2.imread( r'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg' )
tt = 'D:\\projects\\Aielectric\\Bird\train_images\\BIRD_v200_1_1/IMG_2012-09-26T09-00-07.jpg'

mm = cv2.imread( tt )

我的要求是将名称作为变量传递,因为它不是静态的。如何实现这一点?

我不认为你的意思是要有一个原始字符串和转义的反斜杠(假定是工作代码)。你是否尝试过
tt=r'your_path'
这两个代码片段是不等价的。特别是在第一个字符串中使用原始字符串。您需要检查您正在使用反斜杠做什么。在所有情况下,在“train”之前只有一个反斜杠,即使在您确实需要转义它们的地方也是如此-因此它将查找制表符。@SoumyaBoral在这种情况下,您应该使用
os.path.join