例如:
testvar = "test"
print(f"The variable contains \"{testvar}\"")
格式化的字符串文字是在python3.6中引入的
如果我使用#!/usr/bin/env python3
,如果安装了旧版本的python,则会抛出语法错误。
如果我使用#!/usr/bin/env python3.6
,如果没有安装python3.6,它就不会工作,但是更新的版本是。
如何确保我的程序在特定版本上运行?如果使用python3
,我无法检查版本,因为它甚至不会在较低版本上启动。
修改:
我不是指如何运行它,当然你可以明确地说"用python3.6和up"来运行它,但是确保程序是正确的正确方法是什么使用./scriptname.py
时,仅使用特定版本 或更新 运行?
答案 0 :(得分:3)
您需要在两个模块中拆分脚本以避免SyntaxError:第一个是检查Python版本的入口点,如果python版本不是作业,则导入应用程序模块。
# main.py: entry point
import sys
if sys.version_info > (3, 6):
import app
app.do_the_job()
else:
print("You need Python 3.6 or newer. Sorry")
sys.exit(1)
另一个:
# app.py
...
def do_the_job():
...
testvar = "test"
...
print(f"The variable contains \"{testvar}\"")