<?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: Python If statement for Code Block in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226387#M17541</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;You can't put model variables inside the Calculate Value codeblock. Here's how you do that:&lt;BR /&gt;&lt;BR /&gt;Expression:&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;getTime("%Time Frame%") &lt;/PRE&gt;&lt;BR /&gt;Code block:&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):)
&amp;nbsp; if TF == "5 Minutes":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (...)
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So, by making the list in a dictionary, I can then read the Time Frame variable, and based on that String value, get my shorthand string value that is used in the naming convention of my tables?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 11:01:51 GMT</pubDate>
    <dc:creator>ChristopherBlinn</dc:creator>
    <dc:date>2021-12-11T11:01:51Z</dc:date>
    <item>
      <title>Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226378#M17532</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am new to Python, and programming all together really.&amp;nbsp; I am building a model where I want the user to select from a drop down list a value for a parameter (Climate Variable).&amp;nbsp; I then want to use the Calculate Value tool to then get a string value for a variable that will be used to choose a field from a feature attribute table (PYCLIM).&amp;nbsp; I wrote this If Statement (which I believe is wrong) to do such and I am getting the 000989 syntax error on Line 1.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;def getCLIMVAR(PYCLIM):
 climvar = str(%Climate Variable%):
&amp;nbsp; if climvar == "Current Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM = "CUR_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "High Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM == "HI_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Low Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM == "LOW_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Wind Chill Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM == "CHILL_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Dew Point Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM == "DEW_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "High Temperature":
&amp;nbsp;&amp;nbsp; PYCLIM == "HI_TEMP"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Relative Humidty":
&amp;nbsp;&amp;nbsp; PYCLIM == "REL_HUMID"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Solar Radiation":
&amp;nbsp;&amp;nbsp; PYCLIM == "SOL_RAD"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; elif climvar == "Wind Speed":
&amp;nbsp;&amp;nbsp; PYCLIM == "WIND_SPEED"
&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp; else climvar == "Highest Wind Gust":
&amp;nbsp;&amp;nbsp; PYCLIM == "HI_WIND_GUS"
&amp;nbsp;&amp;nbsp; return PYCLIM&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any help would be appreciated.&amp;nbsp; Thank you in advance! If the code is horrible, please understand that I wrote this without ANY python experience.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Jun 2011 20:07:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226378#M17532</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2011-06-16T20:07:35Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226379#M17533</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def getCLIMVAR(PYCLIM):
&amp;nbsp;&amp;nbsp;&amp;nbsp; climvar = str(%Climate Variable%)
&amp;nbsp;&amp;nbsp;&amp;nbsp; if climvar == "Current Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM = "CUR_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "High Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "HI_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Low Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "LOW_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Wind Chill Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "CHILL_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Dew Point Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "DEW_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "High Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "HI_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Relative Humidty":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "REL_HUMID"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Solar Radiation":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "SOL_RAD"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Wind Speed":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "WIND_SPEED"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226379#M17533</guid>
      <dc:creator>JasonScheirer</dc:creator>
      <dc:date>2021-12-11T11:01:34Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226380#M17534</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Chris&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;although the amended "if" statement will work, you might want to start investigating Python dictionaries as a data structure to return/access information (aka values) based upon "keys".&amp;nbsp; Build the dictionary, then use it within a def to return the required values...makes a convoluted if statement much easier since you just need to update and reuse the dictionary without having to rebuild a big "if" statement.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Jun 2011 02:00:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226380#M17534</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2011-06-17T02:00:38Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226381#M17535</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def getCLIMVAR(PYCLIM):
&amp;nbsp;&amp;nbsp;&amp;nbsp; climvar = str(%Climate Variable%)
&amp;nbsp;&amp;nbsp;&amp;nbsp; if climvar == "Current Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM = "CUR_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "High Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "HI_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Low Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "LOW_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Wind Chill Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "CHILL_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Dew Point Temperature":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "DEW_TEMP"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Relative Humidty":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "REL_HUMID"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Solar Radiation":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "SOL_RAD"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == "Wind Speed":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == "WIND_SPEED"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Jason, thanks, so was just the indentation wrong? If so, what do I need to do in the future so I don't have this problem again?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226381#M17535</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2021-12-11T11:01:37Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226382#M17536</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Chris&lt;BR /&gt;although the amended "if" statement will work, you might want to start investigating Python dictionaries as a data structure to return/access information (aka values) based upon "keys".&amp;nbsp; Build the dictionary, then use it within a def to return the required values...makes a convoluted if statement much easier since you just need to update and reuse the dictionary without having to rebuild a big "if" statement.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dan, thanks for the tip.&amp;nbsp; These "Keys"; can they access values generated by a tool parameter?&amp;nbsp; Those are the values I am referencing.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For instance, say I have a variable calculated from other input parameters called DATE (calculated by concatenating %MONTH%&amp;amp;"-"&amp;amp;%DAY%&amp;amp;"-"&amp;amp;%YEAR%; which are the input parameters).&amp;nbsp; This DATE value is needed to locate a file, using the DATE value in the file name.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am using a code similar to the one above to take the input value of another parameter, and calculate a different string, which is then concatenated with the DATE value for the full file name.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If using dictionaries and keys will make this easier on me then I am all about using them.&amp;nbsp; Just didn't know if they would work for what I was doing.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Jun 2011 19:03:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226382#M17536</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2011-06-17T19:03:32Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226383#M17537</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am really having trouble with these "If" statements...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried using the one Jason provided me as a template for another one and I keep getting the syntax error on Line 2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):
 time == str(%Time Frame%)
 if time == "5 Minutes":
&amp;nbsp; TF == "5min"
&amp;nbsp; return TF
 elif time == "30 minutes":
&amp;nbsp; TF == "30min"
&amp;nbsp; return TF
 elif time =="1 hour":
&amp;nbsp; TF == "1hr"
&amp;nbsp; return TF
 elif time == "6 Hours":
&amp;nbsp; TF == "6hr"
&amp;nbsp; return TF
 elif time == "12 Hours":
&amp;nbsp; TF == "12hr"
&amp;nbsp; return TF
 elif time == "1 Day":
&amp;nbsp; TF == "1dy"
&amp;nbsp; return TF
 elif time == "3 Days":
&amp;nbsp; TF == "3dy"
&amp;nbsp; return TF
 elif time == "5 Days":
&amp;nbsp; TF == "5dy"
&amp;nbsp; return TF
 elif time == "1 Week":
&amp;nbsp; TF == "1wk"
&amp;nbsp; return TF
 elif time == "2 Weeks":
&amp;nbsp; TF == "2wk"
&amp;nbsp; return TF
 elif time == "1 Month":
&amp;nbsp; TF == "1mo"
&amp;nbsp; return TF
 elif time == "3 Months":
&amp;nbsp; TF == "3mo"
&amp;nbsp; return TF
 elif time == "6 Months":
&amp;nbsp; TF == "6mo"
&amp;nbsp; return TF
 elif time == "1 Year":
&amp;nbsp; TF == "1yr"
&amp;nbsp; return TF&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried making it only 3 spaces on indentation and that still didn't help.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226383#M17537</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2021-12-11T11:01:40Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226384#M17538</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Probably too many cooks in the kitchen here, but:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In python, there is a difference between "=" and "==". The former is for assigning values, the latter is for comparing values. Also, there is no nead to "return" the TF variable in every if/elif statement - just return it once at the end after all teh conditional expresions have been evaluated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;BTW: Save yourself some time in the long run: Ditch ModelBuilder and go Python. The sooner the better. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But, in the mean time I do believe this should work, and if it doesn't, you should be closer to having the code iwork than you were before...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):
&amp;nbsp;&amp;nbsp; time = str(%Time Frame%) #Note: I assume this line is some sort of model build integration thing - I don't really know what it's for though?
&amp;nbsp;&amp;nbsp; if time == "5 Minutes":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "5min"
&amp;nbsp;&amp;nbsp; elif time == "30 minutes":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "30min"
&amp;nbsp;&amp;nbsp; elif time == "1 hour":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "1hr"
&amp;nbsp;&amp;nbsp; elif time == "6 Hours":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "6hr"
&amp;nbsp;&amp;nbsp; elif time == "12 Hours":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "12hr"
&amp;nbsp;&amp;nbsp; elif time == "1 Day":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "1dy"
&amp;nbsp;&amp;nbsp; elif time == "3 Days":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "3dy"
&amp;nbsp;&amp;nbsp; elif time == "5 Days":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "5dy"
&amp;nbsp;&amp;nbsp; elif time == "1 Week":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "1wk"
&amp;nbsp;&amp;nbsp; elif time == "2 Weeks":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "2wk"
&amp;nbsp;&amp;nbsp; elif time == "1 Month":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "1mo"
&amp;nbsp;&amp;nbsp; elif time == "3 Months":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "3mo"
&amp;nbsp;&amp;nbsp; elif time == "6 Months":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "6mo"
&amp;nbsp;&amp;nbsp; elif time == "1 Year":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "1yr"
&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = "SOL!"
&amp;nbsp;&amp;nbsp; return TF&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:43 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226384#M17538</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2021-12-11T11:01:43Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226385#M17539</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yeah, I was told the same about ditching model builder from others who have been fortunate to know enough python.&amp;nbsp; Unfortunately I chose to take more GIS classes rather than programming when I was a student, but I would really like to learn more Python.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is the code output from the model I am building.&amp;nbsp; Maybe it will make more sense to have it posted.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;# Import arcpy module
import arcpy

# Check out any necessary licenses
arcpy.CheckOutExtension("spatial")

# Script arguments
Climate_Variable = arcpy.GetParameterAsText(0)

Time_Frame = arcpy.GetParameterAsText(1)
if Time_Frame == '#' or not Time_Frame:
&amp;nbsp;&amp;nbsp;&amp;nbsp; Time_Frame = "5 Minutes" # provide a default value if unspecified

Month = arcpy.GetParameterAsText(2)
if Month == '#' or not Month:
&amp;nbsp;&amp;nbsp;&amp;nbsp; Month = "6" # provide a default value if unspecified

Day = arcpy.GetParameterAsText(3)
if Day == '#' or not Day:
&amp;nbsp;&amp;nbsp;&amp;nbsp; Day = "16" # provide a default value if unspecified

Year = arcpy.GetParameterAsText(4)
if Year == '#' or not Year:
&amp;nbsp;&amp;nbsp;&amp;nbsp; Year = "2011" # provide a default value if unspecified

# Local variables:
GIS_Files = "C:\\Users\\Chris\\Desktop\\WKU Summer\\Model\\GIS Files"
Tables_Workspace = "C:\\Users\\Chris\\Desktop\\WKU Summer\\Model\\Tables"
PYCLIM = Climate_Variable
v_PYCLIM__idw = PYCLIM
v_FILE_ = v_PYCLIM__idw
DBF = Time_Frame
MesoPoints = DBF
TF = Time_Frame
DATE = Month
Kentucky_shp = "C:\\Users\\Chris\\Desktop\\WKU Summer\\Projected Data\\Kentucky.shp"
v_DATE___TF__csv = "%DATE%_%TF%.csv"

# Process: Calculate Date Value
arcpy.CalculateValue_management("%Month%&amp;amp;\"-\"&amp;amp;%Day%&amp;amp;\"-\"&amp;amp;%Year%", "", "String")

# Process: Calculate Time Frame Name
arcpy.CalculateValue_management("getTIME(TF)", "def getTIME(TF):\\n&amp;nbsp;&amp;nbsp; time = str(%Time Frame%)\\n&amp;nbsp;&amp;nbsp; if time == \"5 Minutes\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"5min\"\\n&amp;nbsp;&amp;nbsp; elif time == \"30 minutes\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"30min\"\\n&amp;nbsp;&amp;nbsp; elif time == \"1 hour\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"1hr\"\\n&amp;nbsp;&amp;nbsp; elif time == \"6 Hours\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"6hr\"\\n&amp;nbsp;&amp;nbsp; elif time == \"12 Hours\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"12hr\"\\n&amp;nbsp;&amp;nbsp; elif time == \"1 Day\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"1dy\"\\n&amp;nbsp;&amp;nbsp; elif time == \"3 Days\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"3dy\"\\n&amp;nbsp;&amp;nbsp; elif time == \"5 Days\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"5dy\"\\n&amp;nbsp;&amp;nbsp; elif time == \"1 Week\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"1wk\"\\n&amp;nbsp;&amp;nbsp; elif time == \"2 Weeks\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"2wk\"\\n&amp;nbsp;&amp;nbsp; elif time == \"1 Month\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"1mo\"\\n&amp;nbsp;&amp;nbsp; elif time == \"3 Months\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"3mo\"\\n&amp;nbsp;&amp;nbsp; elif time == \"6 Months\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"6mo\"\\n&amp;nbsp;&amp;nbsp; elif time == \"1 Year\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"1yr\"\\n&amp;nbsp;&amp;nbsp; else:\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TF = \"SOL!\"\\n&amp;nbsp;&amp;nbsp; return TF", "String")

# Process: Make DBF
arcpy.TableToTable_conversion(v_DATE___TF__csv, Tables_Workspace, "%DATE%_%TF%", "", "", "")

# Process: Create Mesonet Sites
arcpy.ConvertCoordinateNotation_management(DBF, MesoPoints, "LONG_", "LAT", "DD", "DD", "", "GEOGCS['GCS_WGS_1984',DATUM['D_WGS_1984',SPHEROID['WGS_1984',6378137.0,298.257223563]],PRIMEM['Greenwich',0.0],UNIT['Degree',0.0174532925199433]];-400 -400 1000000000;-100000 10000;-100000 10000;8.98315284119521E-09;0.001;0.001;IsHighPrecision")

# Process: Calculate Field Name Value
arcpy.CalculateValue_management("getCLIMVAR(PYCLIM)", "def getCLIMVAR(PYCLIM):\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; climvar == str(%Climate Variable%)\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; if climvar == \"Current Temperature\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"CUR_TEMP\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"High Temperature\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"HI_TEMP\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Low Temperature\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"LOW_TEMP\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Wind Chill Temperature\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"CHILL_TEMP\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Dew Point Temperature\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"DEW_TEMP\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Relative Humidty\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"REL_HUMID\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Solar Radiation\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"SOL_RAD\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM\\n&amp;nbsp;&amp;nbsp;&amp;nbsp; elif climvar == \"Wind Speed\":\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PYCLIM == \"WIND_SPEED\"\\n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return PYCLIM", "String")

# Process: IDW
arcpy.gp.Idw_sa(MesoPoints, "%PYCLIM%", v_PYCLIM__idw, "", "2", "VARIABLE 12", "")

# Process: Calculate File Name Value
arcpy.CalculateValue_management("%PYCLIM%_%DATE%_%TF%", "", "String")

# Process: Extract by Mask
arcpy.gp.ExtractByMask_sa(v_PYCLIM__idw, Kentucky_shp, v_FILE_)

&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226385#M17539</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2021-12-11T11:01:45Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226386#M17540</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I keep getting the syntax error on Line 2.&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):
 time == str(%Time Frame%)
 if time == "5 Minutes":
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can't put model variables inside the Calculate Value codeblock. Here's how you do that:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Expression:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;getTime("%Time Frame%") &lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Code block:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):)
&amp;nbsp; if TF == "5 Minutes":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (...)
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can read up on lists and dictonaries quickly in the Python tutorial. (I still go back to it at times to brush up.) Dan is right -- they are definitely the way to go with lookups like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
dictTimes = {"Years":"yr","Days":"dy"}
lstPair = TF.split() # makes list: ["5","Years"]
shortName = lstPair[0] + dictTimes[lstPair[1]] # "5yr"&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226386#M17540</guid>
      <dc:creator>curtvprice</dc:creator>
      <dc:date>2021-12-11T11:01:48Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226387#M17541</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;You can't put model variables inside the Calculate Value codeblock. Here's how you do that:&lt;BR /&gt;&lt;BR /&gt;Expression:&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;getTime("%Time Frame%") &lt;/PRE&gt;&lt;BR /&gt;Code block:&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def getTIME(TF):)
&amp;nbsp; if TF == "5 Minutes":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (...)
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So, by making the list in a dictionary, I can then read the Time Frame variable, and based on that String value, get my shorthand string value that is used in the naming convention of my tables?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 11:01:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226387#M17541</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2021-12-11T11:01:51Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226388#M17542</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I kinda hinted at this before, but the code block parameter for the CalculateField tool is notoriously difficult (especially if you start trying to put dictionaries and what not into the code). See: &lt;/SPAN&gt;&lt;A href="http://forums.esri.com/Thread.asp?c=93&amp;amp;f=1729&amp;amp;t=262236#806786"&gt;http://forums.esri.com/Thread.asp?c=93&amp;amp;f=1729&amp;amp;t=262236#806786&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would offer that perhaps your best bets would be:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Rewrite your process entirely in Python, and use an update cursor instead of the codeblock. There is a little learning curve, but trust me, the sooner the better! MB is a waste of time if you are trying to do more colex stuff like conditional expressions and looping.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. If you really want to stay on the ModelBuilder path, instead of the codeblock, use a series of MakeFeatureLayer tools (each applying the correct SQL - example: TIME = '5 minutes; ), and then the appropriately matching CalculateField tool - example: TF = '5min'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Granted option #2 is not as efficient as a codeblock or update cursor in terms of updating the table, but in terms of "real time" (time it takes to actually get the damn thing to work), it will by far be the best option.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry I don't have a silver bullet for the code block syntax, but I learned long ago to not put complex code into that thing since the formatting was so difficult to get correct.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jun 2011 17:43:59 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226388#M17542</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2011-06-24T17:43:59Z</dc:date>
    </item>
    <item>
      <title>Re: Python If statement for Code Block</title>
      <link>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226389#M17543</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Chris,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for all of the information.&amp;nbsp; I have been absorbing everything about python the past couple months that I can.&amp;nbsp; I think I am going to apply both options, first the second just to get a product going, then write the entire thing in python for future use.&amp;nbsp; Thanks again for all of your help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-Chris&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Jul 2011 14:04:21 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/python-if-statement-for-code-block/m-p/226389#M17543</guid>
      <dc:creator>ChristopherBlinn</dc:creator>
      <dc:date>2011-07-25T14:04:21Z</dc:date>
    </item>
  </channel>
</rss>

