বিষয়টি কী তা নির্ভর করে। যদি এটি পরিবেশকে ক্লোন এবং সংশোধন করতে হয় তবে এর একটি সমাধান হতে পারে:
subprocess.Popen(my_command, env=dict(os.environ, PATH="path"))
তবে কিছুটা নির্ভর করে যে প্রতিস্থাপিত ভেরিয়েবলগুলি বৈধ পাইথন শনাক্তকারী, যা তারা প্রায়শই হয় (আপনি কতক্ষণ পরিবেশের পরিবর্তনশীল নামগুলিতে যেগুলি বর্ণানুক্রমিক + আন্ডারস্কোর বা কোনও সংখ্যার সাথে শুরু হওয়া ভেরিয়েবল নয়?) ব্যবহার করেন।
অন্যথায় আপনি কিছু লিখতে পারেন:
subprocess.Popen(my_command, env=dict(os.environ,
**{"Not valid python name":"value"}))
খুব অদ্ভুত ক্ষেত্রে (আপনি পরিবেশের পরিবর্তনশীল নামগুলিতে নিয়ন্ত্রণ কোড বা অ-এসকিআই অক্ষরগুলি কত ঘন ঘন ব্যবহার করেন?) যে পরিবেশের কীগুলি bytes
আপনি (পাইথন 3 এ) এমনকি এটি নির্মাণ করতে পারবেন না।
আপনি যেমন দেখতে পাচ্ছেন প্রযুক্তিগুলি (বিশেষত প্রথম) এখানে পরিবেশের কীগুলিতে উপকার পাওয়া যায় তা বৈধ পাইথন শনাক্তকারী এবং এটি আগে থেকেই পরিচিত (কোডিংয়ের সময়), দ্বিতীয় পদ্ধতির সমস্যা রয়েছে issues যে ক্ষেত্রে এটি নয়, আপনার সম্ভবত অন্য কোনও পদ্ধতির সন্ধান করা উচিত ।
os.pathsep
প্ল্যাটফর্ম জুড়ে কাজ করে এমন পাথগুলির জন্য ":" পরিবর্তে ব্যবহার করতে পছন্দ করুন prefer দেখুন stackoverflow.com/questions/1499019/...