淘宝官方店     推荐课程     在线工具     联系方式     关于我们  
 
 

微波射频仿真设计   Ansoft Designer 中文培训教程   |   HFSS视频培训教程套装

 

Agilent ADS 视频培训教程   |   CST微波工作室视频教程   |   AWR Microwave Office

          首页 >> Ansoft Designer >> Ansoft Designer在线帮助文档


Ansoft Designer / Ansys Designer 在线帮助文档:


Script Guide >
Desktop Scripting with IronPython >
   IronPython Mini-cookbook       


IronPython Mini-cookbook

While a tutorial on Python syntax is beyond the scope of this document, it will present simple counterparts the VBScript constructs that users tend to regularly use.

Comments

Assigning/Creating variables

Create Lists/Arrays

Create Dictionaries/Maps

Boolean Values

Converting Numbers to Strings and Vice Versa

String Formatting/Concatenation

Looping over Lists

Looping over a Range

A Note About Indentation

Additional Sections:

Obtaining More Information

Discovering Methods

Help on a Method

Comments

VBScript

IronPython

Comments start with a single quote

‘ like this line

# Comments start with a sharp or hash

# symbol, like these lines

 

Assigning/Creating Variables

VBScript

IronPython

‘ Declare with a Dim

Dim oDesktop

 

Assignment needs a Set instruction

Set oDesktop = oApp.GetAppDesktop()

# No Set syntax. Simply create and assign

oDesktop = oApp.GetAppDesktop()

 

Create Lists/Arrays

VBScript

IronPython

‘ Declare as array of String with 11

‘ indices from 0 through 10

Dim myArray(0 to 10) as String

myArray(0) = “Hello”

myArray(1) = “bye”

 

Declare n array with no size

Dim array2() as String

 

Re-Dimension the array once size is

known

ReDim array2(0 to 2) as String

array2(0) = “this”

array2(1) = “also”

# Declare an empty array

myEmptyArray = []

 

# declare an array and initialize it with 5 ints

myInitedArray = [ 1, 2, 3, 4, 5]

 

# Python lists can have items of any type

# and there is no pre-declaration

# declare an array and init with mixed types

mixed = [“hello”, 1 ,2 [“nested”]]

 

# append to an array

mixed.append( 3.5 )

 

Create Dictionaries/Maps

VBScript

IronPython

‘ No direct equivalent is available as

‘ far as the author knows

# an IronPython dictionary is a collection of

# name value pairs. Just like arrays, there is

# no restriction on the keys or the values.

# For purposes of Ansoft scripting however,

# all keys must be strings

 

# delimiters are curly braces

# use a “:” between the key and the value

# separate key value pairs with a “,”

myDict = {

“a” : 1,

“b” : “hello there”,

“c” : [ 1, 2, “abc”]

}

Boolean Values

VBScript

IronPython

‘ Boolean literals are in lower case

true

false

# The first letter is capitalized

True

False

Converting Numbers to Strings and Vice Versa

VBScript

IronPython

‘ Use CInt, CDbl, CBool, CLng

‘ to convert the string representation

‘ to the number representation. Use

IsNumber to check before conversion

Dim nStr = “100”

Dim n = CInt(nStr)

 

Use CStr to convert a number to

‘ its string representation

Dim v, vStr

v = 100

vStr = CStr(v)

# use the integer() or float() or double()

# functions to cast a string CONTAINING the

# string representation of whatever you are

# casting to.

strInt = “3”

intVal = int(strVal)

floatVal = float(strVal)

 

# invoke the str() function with the int/float

# values as needed. You can alternately use

# the string formatting method listed below

strVal = str(42)

strVal = str(42.345)

 

String formatting/concatenation

VBScript

IronPython

‘ string concatenation uses the &

‘ operator

Dim allStr, str1

str1 = “ how are you”

allStr = “Hello “ & “ There” & str1

 

‘ there seems to be no direct string

‘ formatting function in VBScript

‘ using string concatenation or using

‘ Replace are the two builtin options

Dim fmt = “{1} climbs stalk {2}”

Dim str = Replace(fmt, “{1}”, “jack”)

str = Replace(str, “{2”}, 10)

# if you have two strings, you can always

# concatenate then using the ‘+’ operator

str1 = “hello”

str2 = “world”

str12 = str1 + “ “ + str2

 

# if you have different types though, string

# and int say, you must use the string

# formatting commands. When formatting

# multiple arguments, they must be entered

# as a tuple ( item1, item2, )

num = 10

str3 = “%s climbs stalk %d” % (“jack”, num)

str4 = “%d stalks” % num

 

Looping over lists

VBScript

IronPython

Dim myArray(0 to 2) as String

myArray(0) = “alpha”

myArray(1) = “bravo”

myArray(2) = “charlie”

 

For Each i in myArray

Print i

Next

vals = [1, 3, 3.456]

 

def process(val):

return 2*val

 

# is of the form

# for variable_name in array ‘:’

# < indent> statement1

# <indent> statement2

for i in vals:

print i

print “ -> ” process(i)

Looping over a range

VBScript

IronPython

‘ Loop over a range, specify start, end

‘ and step

For i = 0 To 10 Step 1

Print i

Next

# prints out values from 0 through 9

for i in range(0, 10):

print i

A note about indentation

Python is one of the thankfully rare languages where whitespace (spaces, tabs etc) are syntactically significant. Whatever your feelings on the subject, you must understand the basics of indentation before scripting in python.

Any statement that introduces a block of code should be written such that every line of the block has the same indent (leading spaces or tabs) and the indent should be at least one more than the indent of the introducing statement.

 

# define a function that starts at 0 indentation.

def multInt(a,b):

# every line following the def multInt which is expected to

# be a part of the function, must have the indent used by the

# first line of the function (3 spaces)

# here we introduce one more block, the if condition

# each line that belongs to the body of this func should have

# an indent that is more than the indent used by the if

# statement

If a%2 == 0:

# I am using an indent 2 more than the parent. i.e. 5

# spaces in total

return (a * b) + 100

else:

return (a * b) + 1000

Sample Script 1: Describing python indentation

 




HFSS视频教学培训教程 ADS2011视频培训教程 CST微波工作室教程 Ansoft Designer 教程

                HFSS视频教程                                      ADS视频教程                               CST视频教程                           Ansoft Designer 中文教程


 

      Copyright © 2006 - 2013   微波EDA网, All Rights Reserved    业务联系:mweda@163.com