<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Py 2.4 - os.walk and using sys.argv in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622879#M48521</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The code below verifies if the supplied path exists... Might help you figure out what's going wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Curious that in Python/PythonWin 2.6.x , you can enter a path as an argument in all sorts of ways:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:\Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:\\Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:/Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;All these work... As I recall earlier versions of PythonWin didn't do this... I think they liked the 1st example. Could be wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import os, sys
myPath = sys.argv[1]
if os.path.exists(myPath) == True:
&amp;nbsp;&amp;nbsp; print "Yes Virginia, there is a " + str(myPath)
else:
&amp;nbsp;&amp;nbsp; print "No, there is no such thing as " + str(myPath)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 02:32:48 GMT</pubDate>
    <dc:creator>ChrisSnyder</dc:creator>
    <dc:date>2021-12-12T02:32:48Z</dc:date>
    <item>
      <title>Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622874#M48516</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a script that walks through a multi-level directory. I would like to be able to use sys.argv to call the workspace, and run thru and do the process.&amp;nbsp; The script works when I hard code to the top level directory.&amp;nbsp; When I add the sys argv, It doesn't run.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;
import arcgisscripting, sys, os

gp = arcgisscripting.create()

try:
&amp;nbsp;&amp;nbsp;&amp;nbsp; def treeDir (arg, dirpath, basenames):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.workspace = dirpath
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lines_list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for f in basenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if f == "lines.shp":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fullf = os.path.join(dirpath,f)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "file=" + fullf 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Add Field ...
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.AddField_management(fullf, "NewField", "DOUBLE", "10", "8", "", "", "NON_NULLABLE", "NON_REQUIRED", "")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print ("gp didn't work correctly")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #Add A Completion Message

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print ("Well done.")

&amp;nbsp;&amp;nbsp;&amp;nbsp; root = sys.argv [1]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ## or hard code the path to top level##
&amp;nbsp;&amp;nbsp;&amp;nbsp; os.path.walk(root,treeDir,None)
except:
&amp;nbsp;&amp;nbsp;&amp;nbsp; print ("Something went wrong.")
&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would like to be able to set up arguments for field parameters as well, but first things first...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a second part to this question which involves Feature Class to Coverage, but I will start a second thread for that.&amp;nbsp; I will also be running that gp tool in the walk script.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in Advance.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 13:17:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622874#M48516</guid>
      <dc:creator>DebraGajdos</dc:creator>
      <dc:date>2012-02-07T13:17:41Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622875#M48517</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Have you thought about trying&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;root = arcpy.GetParameterAsText(0)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;where you are passing this as a value that the user can navigate to if you set it up as a directory in an ArcToolbox script?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is how I am able to achieve what you want to do in your script.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 14:08:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622875#M48517</guid>
      <dc:creator>MichaelVolz</dc:creator>
      <dc:date>2012-02-07T14:08:15Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622876#M48518</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am sorry to say that I am not advanced enough to know how to set that up.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 14:14:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622876#M48518</guid>
      <dc:creator>DebraGajdos</dc:creator>
      <dc:date>2012-02-07T14:14:11Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622877#M48519</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Here is the link to setup a script tool where you can add a parameter to the script as as input:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Adding_a_script_tool/00150000001r000000/"&gt;http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Adding_a_script_tool/00150000001r000000/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I followed this ESRI Help myself and I was able to setup a tool that would walk through all the subdirectories in a user selected directory.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 14:20:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622877#M48519</guid>
      <dc:creator>MichaelVolz</dc:creator>
      <dc:date>2012-02-07T14:20:45Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622878#M48520</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks.&amp;nbsp; I am currently using ArcGIS 9.2 with Python 2.4.&amp;nbsp; I know that things have changed in 9.3, version 10, and then with Python 3, so I will have to dig around a bit to make sure it works as you have shown.&amp;nbsp; I appreciate your help!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 15:07:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622878#M48520</guid>
      <dc:creator>DebraGajdos</dc:creator>
      <dc:date>2012-02-07T15:07:45Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622879#M48521</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The code below verifies if the supplied path exists... Might help you figure out what's going wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Curious that in Python/PythonWin 2.6.x , you can enter a path as an argument in all sorts of ways:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:\Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:\\Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;C:/Temp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;All these work... As I recall earlier versions of PythonWin didn't do this... I think they liked the 1st example. Could be wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import os, sys
myPath = sys.argv[1]
if os.path.exists(myPath) == True:
&amp;nbsp;&amp;nbsp; print "Yes Virginia, there is a " + str(myPath)
else:
&amp;nbsp;&amp;nbsp; print "No, there is no such thing as " + str(myPath)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:32:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622879#M48521</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2021-12-12T02:32:48Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622880#M48522</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yes, the flexablility has made me sloppy... &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I do like your code to check the path - I can see that being helpful!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;hmm, I tried this out and I got this error:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; Traceback (most recent call last):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; File "C:/test/path_exists", line 3, in -toplevel-&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if os.path.exits(myPath) == True:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;AttributeError: 'module' object has no attribute 'exits'&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 17:14:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622880#M48522</guid>
      <dc:creator>DebraGajdos</dc:creator>
      <dc:date>2012-02-07T17:14:31Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622881#M48523</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Did you spell exists correctly?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it should be os.path.exists(myPath)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It is spelled os.path.exits(myPath) in the code block...&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 18:01:08 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622881#M48523</guid>
      <dc:creator>markdenil</dc:creator>
      <dc:date>2012-02-07T18:01:08Z</dc:date>
    </item>
    <item>
      <title>Re: Py 2.4 - os.walk and using sys.argv</title>
      <link>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622882#M48524</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Woops - yes it is exists() not exits()... I fixed the code block above.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Feb 2012 19:09:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/py-2-4-os-walk-and-using-sys-argv/m-p/622882#M48524</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2012-02-07T19:09:01Z</dc:date>
    </item>
  </channel>
</rss>

