使用字符串我指定一個變量,例如:錯誤而蟒蛇
cmd="sed -i 's/id="556"/id="33442233"\n pss="120"/g' a.xml"
但是,當我嘗試打印CMD即時得到一個語法錯誤,似乎是因爲 多個'
和"
的...我該如何解決這個問題?
使用字符串我指定一個變量,例如:錯誤而蟒蛇
cmd="sed -i 's/id="556"/id="33442233"\n pss="120"/g' a.xml"
但是,當我嘗試打印CMD即時得到一個語法錯誤,似乎是因爲 多個'
和"
的...我該如何解決這個問題?
使用\
轉義引號?
cmd="sed -i 's/id=\"556\"/id=\"33442233\"\n pss=\"120\"/g' a.xml"
使用三重引號:
cmd = '''sed -i 's/id="556"/id="33442233"\n pss="120"/g' a.xml'''
順便說一句。我看到\n
有 - 如果你想保持它作爲反斜線-N,而不是把它轉換爲一個換行符,你甚至可以用這樣的:
cmd = r'''sed -i 's/id="556"/id="33442233"\n pss="120"/g' a.xml'''
工作對我來說:
Python 2.7.9 (v2.7.9:648dcafa7e5f, Dec 10 2014, 10:10:46)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> cmd="sed -i \'s\/id=\"556\"\/id=\"33442233\"\n pss=\"120\"\/g\' a.xml"
>>> print cmd
sed -i 's\/id="556"\/id="33442233"
pss="120"\/g' a.xml
爲了避免引號,在字符前加上反斜槓\
。例如:
"\"hello\" said he."
和'\'goodbye\' said she'