官术网_书友最值得收藏!

Using variables to store data

In Chapter 1, Fundamentals of the Python Language for ArcGIS, we covered the topic of variables, so you should have a basic understanding of these structures. Variables are given a name and assigned a data value in your scripts. These named variables occupy space in your computer's memory and the data contained within these structures can change while a script is running. After the script has finished the memory space occupied by these variables is then released and can be used for other operations.

Getting ready

When writing geoprocessing scripts with Python there will be many times when you will need to create variables to hold data of one type or another. This data can then be used in your script as input parameters for tools and functions, as intermediate data for internal processing, to hold paths to datasets, and for other reasons. In addition, many of the ArcPy functions and tools also return data that can be stored in a variable for further use in your script. In this recipe, you will learn the basic techniques for creating variables and assigning data to them.

How to do it...

Follow these steps to create a script that contains variables that are hardcoded with values and that are returned from a function:

  1. Open IDLE and create a new script window.
  2. Save the script to c:\ArcpyBook\Ch2\WorkingWithVariables.py.
  3. Import the arcpy package:
    import arcpy
  4. Create a variable called path and assign a value to it:
    path = "c:/ArcpyBook/data"
  5. Use the newly-created variable to set the workspace:
    arcpy.env.workspace = path
  6. Call the ListFields() function and assign the returned value to a new variable called fields:
    fields = arcpy.ListFields("Building_Permits.shp")
  7. Start a for loop to process each of the field objects contained within the fields variable:
    for fld in fields:
  8. Print the name of each field:
    print fld.name
  9. The entire script should appear as follows:
    import arcpy
    path = "c:/ArcpyBook/data"
    
    arcpy.env.workspace = path
    fields = arcpy.ListFields("Building_Permits.shp")
    for fld in fields:
           print fld.name
  10. Save the script.

How it works...

We created three variables in this script. The first variable, path, was created and assigned a hard-coded value with a data path. This is an example of a literal variable, meaning that they literally mean exactly what they say. They are distinguished from variables, whose values are not directly determined by their name. The second variable, fields, is created from the returned value of the ListFields() function and is a Python list object containing one or more Field objects. Each Field represents a field from the attribute table of a feature class or a standalone table. The final variable is a dynamic variable called fld. As the for loop cycles through the list returned by the ListFields() function, each Field is assigned to the fld variable. The name of each field is then printed to the screen.

主站蜘蛛池模板: 姜堰市| 五峰| 盐源县| 布拖县| 洛宁县| 正定县| 平昌县| 兰西县| 湘阴县| 板桥市| 荣昌县| 玛沁县| 睢宁县| 株洲市| 思南县| 运城市| 滁州市| 剑川县| 丰都县| 大化| 黄平县| 布拖县| 南雄市| 新化县| 常德市| 海门市| 明星| 买车| 铜梁县| 鄂托克前旗| 湘乡市| 宁城县| 全州县| 抚松县| 武宁县| 左权县| 鹤峰县| 阳高县| 论坛| 博兴县| 洱源县|