- 博客(55)
- 收藏
- 关注
原创 Dynamo-批量选择指定标高处的构件,并修改其属性值(以板为例)
当我们在revit中创建体量比较大的模型时,由于图元太多导致在需要批量选择以及修改参数时存在一定困难,本文介绍了使用dynamo可视化编程进行批量修改图元参数的一种方法。
2021-03-20 09:39:40
1707
原创 C# 嵌套类、匿名类与密封类
下面介绍的这三种在开发过程中不太常用,作为了解一、嵌套类一个类被定义在另一个类的内部。嵌套类与普通类相似,只是声明的位置比较特殊实例化方式:外部类.嵌套类 实例名 = new 外部类.嵌套类()class Person{ class Monkey { }}Person.Monkey p = new Person.Monkey(); //实例化对象二、匿名类使用场景:如果一个类的实例对象只会用到一次,可以使用匿名类的方式创建这个对象不
2021-01-19 07:54:54
399
原创 C# 面向对象之多态
一、多态简介什么是多态?面向对象开发的三大特征:封装、继承和多态。在继承的前提下,实例化出不同的对象,这些对象调用相同的方法,但是却表现出不同的行为,这就叫多态。C# 中体现多态有三种方式:虚方法;抽象类;接口这节课咱们就来分别介绍下这三种方法在啥时候用,以及怎么使用。二、虚方法1.啥叫虚方法?在父类中使用virtual关键字修饰的方法,就是虚方法。(virtual中文释义:虚拟的)在子类中可以使用override关键字对该虚方法进行重写。(override本身就...
2021-01-18 12:52:32
541
2
原创 C#面向对象之继承
一、继承之原理分析1.继承简介什么是继承?面相对象的三大特性:封装、继承和多态。将一堆类中的公有成员抽取出来,作为一个父类。然后这一堆类继承这个父类,共享父类的资源,这就叫继承。继承是类与类之间的关系。继承的好处是啥?优化代码结构,让类与类之间产生关系;提高代码复用性,便于阅读;为“多态”提供前提,继承是拿来拥有,多态是发展变异。2.语法格式class 子类:父类{ //类成员;}3.类视图查看类视图:当前项目上右击---视图---查看类
2021-01-12 22:35:26
229
原创 C#面向对象基础之方法
什么是方法?方法就是函数,我们把函数放到类中就叫他方法。用于执行一些行为一、普通方法语法:访问修饰符 返回值类型 方法名(参数列表){ 方法的具体功能代码;}示例:定义一个people类,定义姓名、年龄、地址字段定义姓名、年龄、地址属性定义吃饭、睡觉、工作方法class People { //字段 private string name; private int age; private string add
2021-01-12 13:04:45
477
原创 C#面向对象基础之字段与属性
在咱的上一个博客中有介绍字段的概念,其实就是变量。这次怎么稍微深入一点点,简介一下什么叫属性。以及字段与属性的关系。一.属性1.什么是属性?为什么要有属性?我们把类中的变量称之为字段。字段是对象的核心数据,如果访问修饰符是public(谁都可以访问)的话,容易被恶意赋值。比如:将人的年龄赋值为1000岁,这显然不太符合实际。所以,字段通常用private(私有的,只能类自身内部访问)修饰,这样通过“对象名.字段名”的形式就无法访问了,但我们又需要对其进行读写操作该怎么办尼?这时候就出现了一个叫
2021-01-11 22:46:10
650
原创 C#面向对象基础之类与对象
这是c#面向对象的第一课,介绍了一些基本的概念和思想。一.类1.什么是类?类:用来描述事物特征。比如苹果类:描述了苹果所具有的一些特征,颜色、大小、形状、气味等2.类的语法[访问修饰符] class 类名{ 类的描述信息;}访问修饰符:用于描述类的访问权限,可不写,有默认值class:关键字,用于声明一个类。和枚举enum、结构体struct作用一样哦类的描述信息:用于描述这类事物的特征(通过字段、属性、方法来描述)//苹果类class Apple{ public strin
2021-01-11 22:03:01
122
原创 C#中的函数(也叫方法)
# 一、基本语法 ## 1.概念## 2.函数的声明与调用## 3.函数的参数及返回值# 二、函数重载 ## 1.为何重载## 2.参数不同的情况# 三、高级参数 ## 1.函数参数传递## 2.ref参数## 3.out参数# 四、递归调用## 1.递归的概念## 2. 实例:递归从1加到100
2021-01-11 21:23:33
2306
原创 C#之字符串
“开发一个项目就是不断地去处理字符串”----酒精沙场的程序员如是说本篇包含:字符串基础:概念拼接成的文本值,有点像数组可单个元素(字符)操作声明string str = [null]; //声明string strname; //声明初始化对声明好的字符串进行赋值方法一:直接用字符串进行赋值// 声明同时初始化string a = "实践是检验真理的唯一标准";string b = "锄禾日当午";// 先声明,再初始化string
2021-01-07 16:22:48
1831
原创 C#常量、枚举和结构体
常量语法:const 类型 常量名 = 值;在定义时赋值,在其他地方不能赋值枚举我们自己定义的一种数据类型,并且在定义时要指定这种类型包含的全部值。枚举的定义一般与类在同一级别。这样在同一个命名空间下的所有类都可以使用这个枚举。作用:1. 限制用户对枚举类型变量的赋值只能是枚举出的值,不能是其他值(规范统一)2. 当枚举类型特别多,赋值时不需要用户全部记住,可通过点选进行赋值(gender.男)语法:enum 自己起的类型名称{值1,值2,值3....值n};例子如下:enum
2021-01-03 22:23:52
224
原创 C# 数据类型的转换
C#提供了多种多样的数据类型,如整型,浮点型,字符型等很多时候需要将数据类型进行转换而转换分为两种:隐式类型转换(低精度转化为高精度,无溢出):直接转:int i;long j = i; //隐式转换为long类型显式类型转换(高精度转化为低精度,存在溢出)显式转换分两种:第一种:(类型说明符)表达式(float) x;int i;i = (int)4.5; //显式转换这种转换易出现大bug《零基础学C#》P74中有说明,一般不用我们用第二种:C#提供了Conve
2020-12-27 13:39:01
242
原创 C#之变量
什么是变量?变量的声明和初始化简单的数据类型什么是变量?用来储存特定类型的数据;具有名称、类型和值。变量的声明和初始化变量使用之前必须进行声明和初始化/*声明变量类型 变量名;变量类型 变量名1,变量名2...;*/int a;string aa,bb,cc;简单的数据类型实际上可以使用的变量类型是无限多的,因为开发人员可以通过自定义类型来储存各种数据,这里只讲解简单的数据类型简单的数据类型包括:整型、浮点型、布尔型和字符型1.整数类型(储存整数,可正可负)表现形式:十进
2020-12-26 09:44:01
420
原创 C#数组
编程中有这样一种情形:我们需要存储多个同类型数据。比如,保存 1600 个学生的年龄。是否需要声明 1600 个 int 类型的变量?过了一年,学生们长了 1 岁,是否需要给每个变量重新赋值?这件事情,想想就怕怕。好在C#中有一种数组,专门存储一组相同类型的数据。数组的声明和初始化如下:数据类型[ ] 数组名 = new 数据类型[长度]; double [] y = new double [5];//声明了一个名叫y的数组,长度为5,用于存储double类型的数据注意:数组名像变量名一样要
2020-10-23 11:32:05
256
原创 C#基本逻辑语法
if----else:判断语句if…else 结构包含一个条件和两个分支:条件是 bool 类型表达式,写在 if 后面的圆括号里;分支写在 2 个 {} 里。当条件为 true 时,执行 if 后面的分支,当条件为 false 时,执行 else 后面的分支。语法结构: if (判断条件)//条件,bool类型 {//分支1 执行语句1; } else
2020-10-22 16:46:32
1416
原创 C# 运算符的优先级(算数运算符、逻辑运算符、赋值运算符)
前面我们学习了那么多运算符,如果编程中同时使用了多个运算符,到底哪一个会先运算呢?这就是优先级的问题。C#运算符的优先级请参考下面的顺序:①括号。学数学的时候我们就知道,要先计算括号里面的内容。C#语言也是一样,如果有多层括号,要从里向外计算。括号优先级最高。②一元运算符。有些运算符两边有2个操作数,比如2+3、6%5等等,这些叫做二元运算符。只有一个操作数的叫做一元运算符,它们的优先级高于二元运算符。一元运算符包括:++(自加) 、 --(自减) 、 !(逻辑非)。③*(乘)、/(除)、%(取余)
2020-10-21 22:24:10
2594
原创 C# 逻辑运算符and赋值运算符
逻辑运算符逻辑运算符用来连接多个 bool 类型表达式,实现多个条件的复合判断。C#中的逻辑运算符包括:逻辑非( ! )、逻辑与( && )、逻辑或( || )。逻辑非用来对某一个 bool 类型表达式取反,即“真变假”或“假变真”。请看下面的代码:Console.WriteLine(1 > 0);//条件表达式为true,输出TrueConsole.WriteLine(!(1 > 0));//用逻辑非对条件表达式取反,输出False逻辑与用来判断 2 个 boo
2020-10-21 22:13:51
4449
原创 C# 算数运算符
取余运算符C#中的取余运算符就是%除号/作用是求2个数字相除的商,而取余运算符%的作用是求两个数字相除的余数。比如:Console.WriteLine(19/5);//求19除以5的商,输出3Console.WriteLine(19%5);//求19除以5的余数,输出4(商3余4)编程中,%常常用来检查一个数字是否能被另一个数字整除。比如下面的代码片段:int number = 29;Console.WriteLine(number%2);//求number除以2的余数如果输出0,表示
2020-10-21 21:53:04
627
原创 编程学习的原则
编程是练出来的,而不是学出来的反复应用中积累,忽然有一天顿悟学习原则:从感官到原理(先自己写,写完再看别人写的)从使用别人的,到创建自己的(工作中别人基础上有自己创新)必须亲自动手必须学以致用,紧跟实际工作追求实用,不搞学院派(茴香豆的十种解法?)...
2020-10-20 07:30:52
95
1
原创 python-并行迭代zip和提高迭代效率的方法
我们可以通过zip()函数对多个序列进行并行迭代,zip()函数在最短序列“用完”时就会停止。names = ("高淇","高老二","高老三","高老四")ages = (18,16,20,25)jobs = ("老师","程序员","公务员")for name,age,job in zip(names,ages,jobs): print("{0}--{1}--{2}".format(name,age,job))运行结果:高淇--18--老师高老二--16--程序员高老三--
2020-08-30 17:49:37
525
原创 python之路——集合的概念和基本操作方法
集合是无序可变,元素不能重复。实际上,集合底层是字典实现,集合的所有元素都是字典中的“键对象”,因此是不能重复的且唯一的。集合创建和删除使用{}创建集合对象,并使用add()方法添加元素>>> a = {3,5,7}>>> a{3, 5, 7}>>> a.add(9)>>> a{9, 3, 5, 7}使用set(),将列表、元组等可迭代对象转成集合。如果原来数据存在重复数据,则只保留一个。>>
2020-08-30 17:31:41
72
原创 AUTOLISP——提取dwg图纸中的文字到txt存储
cad图中每个元素都叫图元,每个图元都有不同的属性,如图层、颜色、比例、内容等。将图元组合在一起叫做选择集,方便批量操作与选择本例子中图元为文字
2020-08-24 22:52:13
3390
原创 python-爬虫-猫眼电影TOP100
#!/usr/bin/env python#-*- coding:utf8 -*-#__author__ = "LiDaguo"import requestsimport reimport xlwturl = 'https://maoyan.com/board/4?'headers = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko
2020-06-08 19:58:37
248
原创 python-request(基本用法)
之前学过urllib,但在实现功能时有些比较复杂,比如处理网页验证的cookies时,需要写opener和handle来处理。为了更加方便的实现这些操作,这就有了更为强大的库request,有了它,cookies、登录验证、代理设置等操作都不是事。
2020-06-07 16:58:18
6783
原创 python项目-爬取豆瓣top250电影信息
爬取豆瓣Top250部电影的信息(名称、排名、评价等)准备:用浏览器查看分析网页获取数据:通过HTTP库向目标站点发起请求,可包含额外的heard信息如果服务器能正常响应,会得到一个response,就是获取到的网页内容解析内容:得到的内容可能是HTML、json等格式,可以用页面解析库、正则表达式等进行解析(提取有用信息)保存数据:将提取到的有用信息保存(文本、数据库、或特定格式)下面代码来自Python爬虫技术5天速成(2020全新合集)大佬讲课深入浅出,感谢!#!/usr/bin/e
2020-05-20 09:46:51
1165
原创 python爬虫-urllib
这节课来学习一下什么是urllib库功能:指定URL,获取网页数据(给网页就能爬)获取到的网页原始数据需要后续的处理:1.解析为树形(需要用到BeautifulSoup,方法见咱的另一篇博客)2.粗略提取需要爬取的信息(通过树的各种及节点粗略爬取需要的数据,网页简单时可省略)3.精确定位(通过正则表达式精确匹配信息,方法见咱的另一篇博客)4.保存有用信息(保存到文件,excle,数据库等)#!/usr/bin/env python # -*- coding:utf-8 -*-# 测试url
2020-05-20 09:27:51
200
原创 python爬虫-re正则表达式
这节课来学习一下什么是re库(正则表达式)功能:判断字符串是否符合一定标准注意:是对字符串进行操作,所以操作前应转换为str本篇是使用方法,正则表达式大全需要另行检索import re# 创建模式对象# 制定规则pat = re.compile('AA') # 此处的AA是正则表达式的内容,用于验证其他字符串# 返回none或找到符合正则表达式的字符串位置m = pat.search('aa') # search字符串被校验的内容m = pat.search('AA')m
2020-05-20 09:25:47
418
原创 python爬虫-bs4-BeautifulSoup
这节课来学习一下什么是BeautifulSoup库功能:用于网页的数据解析BeautifulSoup4将复杂的HTML文档装换为一个复杂的树形结构每个节点都是python对象,所有对象可以归纳为以下四种:-Tag 标签及其第一个内容(例如:百度一下,你就知道,title为标签)-NavigableString 标签里的内容(字符串)(例如:百度一下,你就知道,为内容)-BeautifulSoup 整个文档(用于整个文档方法的访问)-Comment 特殊的Na
2020-05-20 09:20:35
299
原创 python爬虫-xlwt
这节课来学习一下什么是xlwt库功能:对excle文件进行创建、写入、修改、删除等操作import xlwtworkbook = xlwt.Workbook(encoding='utf-8') # 创建workbook对象(excle文件)worksheet = workbook.add_sheet('sheet1') # 创建工作表worksheet.write(0,0,'hello') # 写入数据(行,列,内容)workbook.save('student,xls'
2020-05-20 09:16:02
566
原创 python项目-爬取妹子图
最近在学爬虫,写了一个爬取妹子图片功能:自动下载妹子图,并自动命名网址:http://www.netbian.com/meinv/#!/usr/bin/env python # -*- coding:utf-8 -*-# 爬取妹子图# url:http://www.netbian.com/meinv/# http://www.netbian.com/meinv/index_2.htmimport urllib.requestimport urllib.parsefrom bs4 impo
2020-05-20 08:43:10
2766
1
原创 python-生成器(通俗详解)
生成器:含有yield的函数。(无需借助类就能实现)功能:函数执行过程中可中断、可重开、可暂停、可续传为什么要用生成器? 解决内存占用问题,看最后一段代码。原理:是基于迭代器来实现(既然生成器是一个迭代器,它可以被用在for 循环中),内部会自动创建__iter__()和__next__()方法。运行规则:遇到yield,程序暂停,并返回值,下次还从该位置运行对比return则是程序...
2020-05-07 20:58:36
288
原创 python-迭代器
迭代:迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。每一次对过程的重复被称为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值迭代器:是一个可以记住遍历位置的对象。迭代器从集合的第一个元素开始访问,直至所有元素访问完结束。提供迭代方法的容器如:字符串、列表、元祖、字典、文件等(他们都具有iter()和next()方法)迭代器有两个基本的方法:iter()...
2020-05-06 20:52:26
129
原创 python-二维嵌套列表的元素删除、更改大小写
说明:列表在循环过程中不可删除元素,否则会使元素位置错乱,超出索引这里采用从后向前删除元素的方法,可避免位置错乱举个例子:1.将列表a的所有大写字母改为小写2.删除所有数字a = [[1,2,3],['a','b','c'],[4,5,6],['e','f','G'],[7,8,9]][['A', 'B', 'C'], ['E', 'F', 'g']]代码如下:a = [[1,...
2020-05-05 22:16:22
1690
原创 python-类-魔法方法-描述符
描述符:将某种特殊类型的类的实例指派给另一个类的属性a类中的属性a.fa,是通过b类来访问、设置、删除的,那么b类就叫属性a.fa的描述符(用b类描述fa到底是什么样子的)作用:可以让程序更加优雅,这里有一些说明__get__(self,instance,owner) # 用于属性访问,返回属性的值__set__(self,instance,value) # 将属性分配操作...
2020-05-05 19:33:25
166
原创 python-类-实时检测对象有多少个属性
运行效果:c = Counter()c.x = 1print(c.counter)>>> 1c.y = 2c.z = 3print(c.counter)>>> 3print(c.attr_name)>>> [x, y, z]代码如下:class Counter: def __init__(self)...
2020-05-03 09:07:44
556
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人