通过变量来引用函数
foo = math.sqrt
foo(4)
cmath函数用于计算复数
在Python3中已经不再使用反引号了
str函数它会把值转换为合理形式的字符串,以便用户可以理解;
repr函数它会创建一个字符串,以合法的Python表达式的形式来表示值。
r'都结束了佛;'\,./fs'
对立面的字符串不会做任何转义,但是原始字符串最后一个字符不能是反斜线,除非你对反斜线进行转义
python2中的input会把输入的字符串当成一个代码来执行
Python 3中只有input函数 等价于 python2中的raw_input函数
主要区别:列表可以修改,元组则不能。
索引、分片、加、乘、in、还有计算长度、找出最大元素和最小元素的内建函数
分片
>>>a=[1,2,3,4,5,6,7,8,9,10]
>>>a[5::-2]
[6, 4, 2]
>>>a[:5:-2]
[10, 8]
加
两种相同类型的序列才能进行连接操作
[1,2,3] + [4,5,6]
'Hello' + 'world!'
乘
>>>'test'*5
'testtesttesttesttest'
>>> [12]*5
[12, 12, 12, 12, 12]
长度、最小值和最大值
len、min、max
字符串转列表
>>> list('Hello')
['H', 'e', 'l', 'l', 'o']
列表转字符串
>>> ''.join(['a','t','t','u'])
'attu'
改变列表:元素赋值
x[1]=2
改变列表:删除元素
del x[2]
改变列表:分片赋值
ex1.
>>> name = list('Perl')
>>> name[2:] = list('ar')
>>> name
['P', 'e', 'a', 'r']
ex2.
>>> name = list('Perl')
>>> name[1:]=list('python')
>>> name
['P', 'p', 'y', 't', 'h', 'o', 'n']
ex3.
>>> numbers=[1,5]
>>> numbers[1:1]=[2,3,4]
>>> numbers
[1, 2, 3, 4, 5]
ex4.
>>> numbers
[1, 2, 3, 4, 5]
>>> numbers[1:4]=[]
>>> numbers
[1, 5]
列表方法
append count extend index insert pop remove reverse sort cmp(x,y)
pop是唯一一个既能修改列表又能返回元素值得列表方法
cmp/key/reverse参数都可以用于sort函数
tuple = (‘apple’, ‘bannana’, ‘grape’, ‘orange’)
当元组只有一个元素时,正确的写法为 tuple =(‘apple’,)
tuple 将一个序列作为参数并把它转换为元组。
tuple([1,2,3]) tuple(‘abc’)
字符串都是不可变的。
字符串格式化操作符: %
基本的转换说明符,按一定的顺序至关重要。
(1)%字符 标记转换说明符开始
(2)转换标志
+ 表示在转换值之前要加上正负号
- 表示左对齐
0 表示转换值若位数不够则用0填充
(3)最小字段宽度: 转换后字符串至少应该具有该指定的宽度。
如果是*,则宽度从值元组中读取。
(4)点(.)后跟精度值: 如果转换是实数,精度值就表示出现在小数点后的位数;如果转换的是字符串,那么该数字就表示最大字段宽度。如果是*,那么精度将会从元组中读出。
>>> print('%-10.2f' % pi)
3.12
左对齐 宽度为10 小数点后两位
字符串一些有用的字符串和常量:
string.digits:包含数字0~9的字符串
string.letters:包含所有字母(大写或小写)的字符串
(python3中移除了letters,该使用string.ascii_letters)
string.lowercase:包含所有小写字母的字符串
string.printable:包含所有可打印字符的字符串
string.punctuation:包含所有标点的字符串
string.uppercase:包含所有大写字母的字符串
一部分方法:
find:返回子串所在位置的最左端索引。没有找到则返回-1
join:用来连接序列中的元素
lower:返回字符串的小写字母版
replace:返回某字符串的所有匹配项均被替换之后得到字符串。
split:用来将字符串分割成序列
strip:返回去除两侧(不包括内部)空格的字符串
translate:和replace方法类似,不同是它只处理单个字符。优势在于可以同时进行多个替换,有些时候比replace效率要高得多。
Python3.4已经没有string.maketrans()了,取而代之的是内建函数:
bytearray.maketrans()、bytes.maketrans()、str.maketrans()
方法一:
person = {"username":"john","age":18}
方法二:
person = dict(username='john',age=18)
len(d):返回字典的键值对的长度。
d[k]:获取k这个key对应的值。
d[k] = v:设置键为k的值为v,如果字典中不存在键为k的这一项,那么自动的添加进去。
del d[k]:删除d这个字典中键为k的这一项数据。
k in d:检查d这个字典中是否包含键为k的这一项。(字典中查找的是键,而不是值)
表达式v in l(l为列表)则是用来查找值。
字典中的键可以是任意的不可变类型,比如:浮点类型、整形、长整形、字符串或者元组。
clear:清空字典所有的key、value
person = {'username':'john','age':18}
a.clear()
print a
get:访问字典中那个键对应的那个值。这个方法不会抛出异常而是返回None。
person = {'username':'john','age':18}
username = person.get('username')
print username
has_key:判断某个键是否存在字典中。相当于k in d在Python3中这个方法不存在,所以最好使用in操作符。
pop:用来获得对应于给定键的值,然后将这个键盘和值的项从字典中删除。会返回这个值。
person = {'username':'john','age':18}
person.pop('username')
popitem:随机的移除字典中的一项。因为字典是无序的。
update:用一个字典更新另外一个字典,若有相同的键则会覆盖。
a = {'url':'http://www.python.org/','title':"python"}
b = {"url":"http://www.google.com/",'name':"google"}
a.update(b)
print a
未完待续…(持续更新)
文章浏览阅读1.1k次。我是凝思系统,使用的一些系统库可能比较旧吧,容易报错,记录一下解决过程查阅资料是 glib 版本的问题[Solved]navicat report error after update system / Applications & Desktop Environments / Arch Linux Forums我用的是 glib 的 2.68.4 分支,旧的版本有些符号有问题https://github.com/GNOME/glib/tree/2.68.4参照 1_04_GLib库入门与实践_GLi_linux 安装navicat 提示报错
文章浏览阅读1w次,点赞29次,收藏133次。推荐阅读CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客QQ群:1040082875大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。一、前言最近有粉丝要参加游戏创作大赛,问我需要准备学习什么知识,以及参加比赛的注意事项:参加这类比赛是非常有好处的,不仅提高了技术,也增长了见识。因为是兴趣驱动学习,在完善自己心爱游戏的过程中,要不断的去学习,不断的提高自己。更能在这个过程中找到志同道合的好朋友。那今天就._unity小游戏2048源码
文章浏览阅读6.5k次。写了一个简单的函数,将三维点云(ndarray)保存为.ply文件:def save_points_as_ply(points, ply_path): """ 将点云保存为.ply文件,保存成功会打印'ply_path 已保存' :param points: ndarray, (-1,3) :param ply_path: str,'xxx/xxxx.ply' """ pcd = o3d.geometry.PointCloud() pcd.point_write pcd failed: unable to generate header.
文章浏览阅读75次。所有View(视图)元素中都有一个XML属性android:layout_weight,其值为0,1,2,3...等整数值。使用了之后,其对应界面中的元素比例就会发生变化,变大或者变小。layout_weight属性其实就是一个元素重要度的属性,用于在线性布局中为不同的view元素设置不同的重要度。 所有的视图都有一个layout_weight值,其默认值为0,表示视图多大就占据..._android view获取当前的layout_with 的值
文章浏览阅读8.6k次,点赞11次,收藏14次。hosts文件在windows目录下的位置(我的是win10系统,其他系统大同小异)C:\Windows\system32\drivers\etc\hostslinux系统hosts位置/etc/hostsLinux系统一般来说linux系统出现无法修改的情况是比较少的,基本没有,只要你处于root权限下是都可以修改的,因为root默认是有rwx权限的如果不能修改,r..._linux hosts文件无法保存
文章浏览阅读962次。Java 异常处理异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。异常发生的原因有很多,通常包含以下几..._public int getlength(){return length}
文章浏览阅读5.2k次,点赞6次,收藏80次。机器学习是一种人工智能技术,通过对数据的学习和分析,让计算机系统自动提高其性能。简而言之,机器学习是一种从数据中学习规律和模式的方法,通过数据来预测、分类或者决策。_机器学习
文章浏览阅读3.8k次,点赞3次,收藏39次。目录一、实验目的及要求二、实验原理三、实验环境四、实验步骤及内容4.1账户与口令4.2审核与日志4.3安全模板五、实验总结六、分析与思考一、实验目的及要求了解Windows账户与密码的安全策略设置,掌握用户和用户组的权限管理、审核,以及日志的启用,并学会使用安全模版来分析配置计算机。二、实验原理Windows系列是目前世界上使用用户最多的桌面操作系统。由于历史原因,Windows的很多用户都直接以管理员权限运行系统,对计算机安全构成很大隐患。从Wi..._操作系统的基本安全设置实验总结
文章浏览阅读3.2k次,点赞2次,收藏15次。本文用日志来记录我们测试脚本做的事情,其实最好的办法是写事件监听(对于小白的我,暂时不会,先从日志学起)。 下面写一个日之类,用来输出不同级别的日志信息到本地文件夹下的日志文件里。 目标输出效果: 解决思路: 1. 封装Log类,类名为Logger; 2. 在Logger类中创建记录器logger; 3. 创建一个handler,用于写入日志文件,写到磁盘;再创建一个handler,_selenium python 创建log类
文章浏览阅读632次。mysql 开启bin_logvi /etc/my.cnf末尾增加如下配置log_bin=mysql-bin binlog-format=ROW #选择row模式server-id = 1expire_logs_days=5 #日志过期时间为5天 重启mysql [5.7]service mysqld restart 修改canal 配置vi canal/conf/canal.properties#唯一标识 新增canal.id =123 _canalboot
文章浏览阅读1w次,点赞11次,收藏13次。本文目录1. 水平线的概念2. 水平线的用法3. 小结1. 水平线的概念HTML中有一个比较特别的标签,叫做水平线,写作<hr>。该标签可以在网页上显示一条横线,一般用来分隔不同的网页内容。2. 水平线的用法使用方法很简单,在需要分割的地方,添加一个<hr>标签即可。例如:<!DOCTYPE html><html><head> <title>水平线实例</title> <meta c_html水平线
文章浏览阅读4k次,点赞7次,收藏9次。pip freeze就不要说了,当你安装1000个包的时候就不会用这种蠢办法。第一种办法,打开终端/CMDpip freeze | findstr numpy这是windows下的,numpy只是个例子,要查什么自己改pip freeze | grep numpylinux下的第二种方法,python里去看。打开python命令行界面。一般来说包的版本都会用一个.__versio..._python 如何查看networks的版本