В Питоне рюхает кто?
Может проще проблему описать все-таки?
чо за тип данных ({словарь}) ?
вообще, это просто map
хранит данные в виде пар: ключ-значение
ключ - любой объект с определенной функцией hash
пример:
str2num = { 'one': 1,
'two': 2 }
number = str2num['one']
Есть обект просто {..}, а есть ({..}). В чем разница?
>>> a=({'aaa':'bbb'})
>>> type(a)
<type 'dict'>
art:~$ python2.3
Python 2.3.5 (Sep 4 2005, 22:01:42)
[GCC 3.3.5 (Debian 1:3.3.5-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> str2num = {'one': 1, 'two': 2}
>>> str2num_ = ({'one': 1, 'two': 2})
>>> type(str2num)
<type 'dict'>
>>> type(str2num_)
<type 'dict'>
хз, похоже, никакой
может речь шла о tuple словарей, к примеру?
но смысл в том, что возвращается объект типа ({} а доступ к тому, что внутри {} я получить не могу
и тогда нет возможности присваивания чего-либо индивидуальному элементы тьюпла (если это подразумевалось под доступом
то есть,
tup[0] = {...} - даст ошибку.
чо за тип данных ({словарь}) ?
Кортеж, а в кортеже словарь.
({'one': 1, 'two': 2} , ) -Нет, запятой там нету..
Не, типа такого: ({'one': 1, 'two': 2, ..} )
Не, типа такого: ({'one': 1, 'two': 2, ..} )
Я ж сказал: кортеж из одного эл-та. Эл-т - словарь.
Если "не" - то выдай код как получил и type(obj).
А разве ({..}) и ({..} -- одно и то же?
А разве ({..}) и ({..} -- одно и то же?Да.
...
print tmp
print type(tmp)
print tmp[0]
output:
>>> execfile("d:\\test.py")
({'children': '', 'id': 2, 'name': 'Datum axis-1', 'parents': '', 'path': 'unknown', 'sketch': 'unknown'})
<type 'Feature'>
File "d:\test.py", line 27, in ?
print tmp[0]
TypeError: unsubscriptable object
>>>
Мне нужно узнать, например, чему равно 'id' у tmp
А id(tmp) не помогает?
файл исходный покажи. с текстом программы.
>Да.
A special problem is the construction of tuples containing 0 or 1 items: the syntax has some extra quirks to accommodate these. Empty tuples are constructed by an empty pair of parentheses; a tuple with one item is constructed by following a value with a comma (it is not sufficient to enclose a single value in parentheses).
Источник:
http://python.org/doc/2.4.2/tut/node7.html#SECTION0073000000...
Для списков и словарей вроде верно, кортежи не пользую
Но у него здесь у tmp переопределена str или repr и всё.
Для списков и словарей вроде вернокортежи определяются через круглые скобки, а они используются также для указания последовательности выполнения операций.
Хз, дождемся код.
id(tmp)>>>print id(tmp)
313949448
- чот не то
а это, собственно, весь код
функция возвращает объект типа feature
from abaqus import *
from abaqusConstants import *
import part
import regionToolset
import displayGroupMdbToolset as dgm
import material
import section
import assembly
import step
import interaction
import load
import mesh
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D, type=DEFORMABLE_BODY)
p.ReferencePoint(point=(0.0, 0.0, 0.0
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p2 = mdb.models['Model-1'].parts['Part-1']
tmp=p2.DatumAxisByPrincipalAxis(principalAxis=XAXIS)
print type(tmp)
print id(tmp)
где искать описания класса? в папке с питоном только *.pyc есть..
>>>print id(tmp)
313949448
- чот не то
Это id у tmp (т.е. грубо говоря адрес по которому лежит переменная tmp)
где искать описания класса? в папке с питоном только *.pyc есть..
видимо в модулях abaqus и abaqusConstants.
Есть еще способ: почитать доки (если это стандартный модуль)
http://www.google.ru/search?hl=ru&q=DatumAxisByPrincipal...
Вторая ссылка. Только доки не бесплатные => я к ним доступа не имею. Но раздел 10.6.
Модули abaqus и abaqusConstants идут ввиде бинарников *.pyc. Чем их смотреть.
Есть ещё предложение, как узнать id у объекта
может запихать это всё в стороковую переменную и вытащить вручную?
({'children': '', 'id': 2, 'name': 'Datum axis-1', 'parents': '', 'path': 'unknown', 'sketch': 'unknown'})
id тот, что равен 2
В тех доках объукт feature не полностью описывается.tmp.__doc__
Модули abaqus и abaqusConstants идут ввиде бинарников *.pyc. Чем их смотреть.
tmp.__class__
tmp.__dict__
чему равны? (print им сделай)
Есть ещё предложение, как узнать id у объектаЯ не знаю как оно генерит свое строковое представление. В тех примерах что ты приводил - так можно, _наверно_.
может запихать это всё в стороковую переменную и вытащить вручную?
Только это через ж...
print tmp.__class__
AttributeError: 'Feature' object has no attribute '__class__'
Feature -> The following commands operate on Feature objects. For more information about the
Feature object, see .
File "d:\test.py", line 29, in ?
print tmp.__dict__
AttributeError: 'Feature' object has no attribute '__dict__'
Feature -> The following commands operate on Feature objects. For more information about theэто не полностью?
Feature object, see .
Не, это полностью.
>Только это через ж...
Есть ещё идеи?
2. Спросить у производителя, если в доках не описано.
3. Делать через ж.
Больше не видно вариантов :-(
Есть ещё идеи?Я не видел доки.
1. Читать доки заново. (всё что тебе _можно_ узнать) - там написано должно быть.ABAQUS/CAE is a feature-based modeling system, and features are stored in the Feature object. The user defines the parameters of the feature, and ABAQUS/CAE modifies the model based on the value of the parameters. This evaluation of the parameters is called regeneration of the feature, Feature objects contain both the parameters and the resulting model modification.
Access
import part
mdb.models[name].parts[name].features[name]
mdb.models[name].parts[name].featuresById[i]
import assembly
mdb.models[name].rootAssembly.features[name]
mdb.models[name].rootAssembly.featuresById[i]
...
Members
The Feature object has the following member:
name
A String specifying the repository key.
3. Делать через ж.Как напривить output "print tmp" в строку?
А единственный доступный атрибут name:
print tmp.name
А по теме - функции str и repr
Оставить комментарий
Makc500