引号

python编程基础

北城以北 提交于 2020-02-11 17:09:47
if判断语句 if expression : #没有括号 statement; elif expression : statement; else: statement; for循环语句 for i in range(1,10,2): statement while循环 while expression: statement; 函数 def function-name(parameters): statement; 列表 赋值 spam=['a',2,'cat'] spam=[[1,2,3],['cat','dog']] 取值 spam[1] spam[1][0] #对于列表包含列表的 修改列表的值 spam[1] = 3 删除列表中的元素 del spam[1]#删除元素之后,被删除值后面的所有值,都将向前移 动一个下标 使用列表 列表用于循环 for i in range(len(spam)): print(spam[i]); 常见函数 len(spam) 求列表的长度 spam.index(‘value’) 返回该值的下标,如果该值不在列表中,就报ValueError,如果有多个重复的值,返回第一个值的下标 spam.append(value) 将值添加到末尾 spam.insert(index,value)可以在列表任意位置进行添加 spam.remove(value)

python编程基础

此生再无相见时 提交于 2020-02-11 00:31:04
if判断语句 if expression : #没有括号 statement; elif expression : statement; else: statement; for循环语句 for i in range(1,10,2): statement while循环 while expression: statement; 函数 def function-name(parameters): statement; 列表 赋值 spam=['a',2,'cat'] spam=[[1,2,3],['cat','dog']] 取值 spam[1] spam[1][0] #对于列表包含列表的 修改列表的值 spam[1] = 3 删除列表中的元素 del spam[1]#删除元素之后,被删除值后面的所有值,都将向前移 动一个下标 使用列表 列表用于循环 for i in range(len(spam)): print(spam[i]); 常见函数 len(spam) 求列表的长度 spam.index(‘value’) 返回该值的下标,如果该值不在列表中,就报ValueError,如果有多个重复的值,返回第一个值的下标 spam.append(value) 将值添加到末尾 spam.insert(index,value)可以在列表任意位置进行添加 spam.remove(value)

sql注入学习笔记 详解篇

亡梦爱人 提交于 2020-02-10 10:38:17
sql注入的原理以及怎么预防sql注入(请参考上一篇文章)      https://www.cnblogs.com/KHZ521/p/12128364.html (本章主要针对MySQL数据库进行注入) sql注入的分类:   根据注入类型分类:     1.union联合注入     2.报错注入     3.盲注       布尔类型盲注       延时盲注   根据注入位置分类     get注入     post注入     请求头注入   根据sql语句不同分类     数字型注入     字符型注入 sql 注入的步骤:   1.寻找注入点     哪些地方可能存在注入点(所有与数据库交互的地方都有可能存在注入点)     一般get请求注入点判断的方式,例:假设参数为?id=1在携带参数的后面使用?id=1',(请注意单引号,如果单引号被数据库查询) ?id=1' //使用单引号使数据库报错,引发数据库异常(有时候使用双引号闭合的时候,单引号是不会报错的 在可能存在注入点的地方多尝试就好了)假如提交了?id=1'//和id=1时候出现出现明显不一样的页面,就表示可能存在注入点,当然,也有可能是被waf拦截了 //假设php中查询的sql语句为 sql = "select * from user where id='$id' limit 0,1";

Python3 字符串

偶尔善良 提交于 2020-02-09 18:08:22
字符串是 Python 中最常用的数据类型。我们可以使用引号( ' 或 " )来创建字符串。 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。 Python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表: 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横向制表符 \r 回车 \f 换页 \oyy 八进制数,yy代表的字符,例如:\o12代表换行 \xyy 十六进制数,yy代表的字符,例如:\x0a代表换行 \other 其它的字符以普通格式输出 Python字符串运算符 下表实例变量a值为字符串 "Hello",b变量值为 "Python": 操作符 描述 实例 + 字符串连接 a + b 输出结果: HelloPython * 重复输出字符串 a*2 输出结果:HelloHello [] 通过索引获取字符串中字符 a[1] 输出结果 e [ : ] 截取字符串中的一部分,遵循 左闭右开 原则,str[0,2] 是不包含第 3 个字符的。 a[1:4] 输出结果 ell in 成员运算符 - 如果字符串中包含给定的字符返回 True 'H' in a 输出结果

python之字符串的特性与常用方法

一世执手 提交于 2020-02-06 08:34:13
python之字符串的特性与常用方法 1. 字符串的定义 2. 字符串的特性 2.1 索引 2.2 切片 2.3 重复 2.4 连接 2.5 成员操作符 2.6 for循环遍历 2.7 枚举 2.8 zip压缩 3. 字符串的常用方法 3.1 字符串的判断 3.2 字符串的转换 3.3 字符串的去除 3.4 字符串的对齐 3.5 字符串的查找与替换 3.6 字符串的统计 3.7 字符串的分离和连接 1. 字符串的定义 字符串就算一系列字符,在python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号。 单引号:a = ‘kane’ 双引号:b = “kane” 当字符串内有单引号时,单引号 + 转义字符:c = ‘what\’s’ 当字符串内有单引号时,双引号:d = “westos’s” 三引号(多行输出): d = """ 用户管理系统 1.添加用户 2.擅长用户 3.显示用户 ..... """ 2. 字符串的特性 2.1 索引 索引:0 1 2 3 4 索引从0开始 s = 'hello' print ( s [ 0 ] ) ##拿出第一个字符 print ( s [ 1 ] ) ##拿出第二个字符 print ( s [ 4 ] ) ##拿出最后一个字符 print ( s [ - 1 ] ) ##拿出最后一个字符 输出结果: 2.2 切片 切片: s

htmlentities,mysql_real_escape_string,addslashes

淺唱寂寞╮ 提交于 2020-02-06 00:23:44
另外一个Web应用安全的基础是对输出进行转义或对特殊字符进行编码,以保证原意不变。例如,O'Reilly在传送给MySQL数据库前需要转义成O\'Reilly。单引号前的反斜杠代表单引号是数据本身的一部分,而不是并不是它的本义。 我所指的输出转义具体分为三步: l 识别输出 l 输出转义 l 区分已转义与未转义数据 只对已过滤数据进行转义是很有必要的。尽管转义能防止很多常见安全漏洞,但它不能替代输入过滤。被污染数据必须首先过滤然后转义。 在对输出进行转义时,你必须先识别输出。通常,这要比识别输入简单得多,因为它依赖于你所进行的动作。例如,识别到客户端的输出时,你可以在代码中查找下列语句: echo print printf <?= 作为一项应用的开发者,你必须知道每一个向外部系统输出的地方。它们构成了输出。 象过滤一样,转义过程在依情形的不同而不同。过滤对于不同类型的数据处理方法也是不同的,转义也是根据你传输信息到不同的系统而采用不同的方法。 对于一些常见的输出目标(包括客户端、数据库和URL)的转义,PHP中有内置函数可用。如果你要写一个自己算法,做到万无一失很重要。需要找到在外系统中特殊字符的可靠和完整的列表,以及它们的表示方式,这样数据是被保留下来而不是转译了。 最常见的输出目标是客户机,使用htmlentities( )在数据发出前进行转义是最好的方法。与其它字符串函数一样

‘’和“”区别和使用

喜欢而已 提交于 2020-02-04 17:44:30
一,在C#中使用 1,单引号'a'表示单个字符,在其中必须且只能有一个字符。 2,双引号"a"表示字符串,字符串是由若干个字符组成的。 3,字符是组成字符串的元素。 如下代码: //char a = "";//错误 无法将类型“string”隐式转换为“char” //char a = "sssss";//错误 无法将类型“string”隐式转换为“char” //char a ='aaaaaa'; //错误 字符文本中的字符太多 //char a = '中国'; //错误 字符文本中的字符太多 //char a = 'aa'; //错误 字符文本中的字符太多 char a = 'a';//正确 char a1 = '中';//正确 string b = "bbbbb";//正确 二,在js中单引号和双引号使用, 都可以表示字符或字符串。但是它们必须成对出现,不能前面用一个单引号,后面用一个双引号,这样会报错。 一般情况下,建议优先使用单引号包含字符串,好处: 1,html中标签的属性是用双引号包裹,在js中如果要动态输出html内容,则用单引号将整体html代码包裹起来,而标签中的属性刚好用双引号,避免了转义 2,在语法上,单引号和双引号没有区别,建议优先选用单引号,如何字符串内还有引号,再用双引号 ,必要的时候还需要用\进行转义 使用如下代码: <!DOCTYPE html>

Python学习笔记(3)

拈花ヽ惹草 提交于 2020-02-04 13:24:31
学习主题:变量和字符串 学习日期:2020-02-04 Python 版本:3.7.4 变量 使用变量之前先赋一个初始值。 变量命名可以用字母,数字,下划线 这三个单独或者组合表示。但是不能以数字开头。这和其他的语言对变量命名规范一致。 区别大小写,A和a表示的不一样。 字符串 转义符号–反斜杠的使用 比如说打印出let’s go.这个里面包括‘,这怎么打印? 使用了 反斜杠,但是一般的路径中又存在反斜杠,要打印这个路径,怎么办? 那怎么办呢? 使用反斜杠为反斜杠自身进行转义 那么,如果对于一个路径是有很多反斜杠呢。一个个都再添加一个反斜杠还是很复杂的,怎么办呢? str = 'C:\Program Files\Common Files\Microsoft Shared\Help' ; print ( str ) ; # 这两句代码是有问题的,无法执行 str = 'C:\\Program Files\\Common Files\\Microsoft Shared\\Help' ; # 每一个反斜杠后边都加一个反斜杠,对自身转义 print ( str ) ; 还有一个简单的方法,就是使用原始字符串,只需要在字符串前面加入一个英文字母r即可。 str = r 'C:\Program Files\Common Files\Microsoft Shared\Help' ;

python变量

浪子不回头ぞ 提交于 2020-02-04 12:43:11
python变量 一:Python的变量类型非常简单:主要分下面几类: 1.numbers:分整数int和浮点数float 2.String :单引号,双引号和三引号 3.布尔值 4.空值 二,Python的变量命名 一:Python的变量类型非常简单:主要分下面几类: 1.numbers:分整数int和浮点数float 整数:比如1,200,-1000,0,也有用十六进制表示的比如0xff00等 浮点数:比如1.11,12,13,-10.02,也有比较大的浮点数比如2.12x10^9 2.String :单引号,双引号和三引号 python的字符串以’‘或者""或者’’’’’‘括起来的随意文本都是字符串’abc’,“hello world”,’’‘This is my first code’’’**有一点要注意若字符串里面包含特殊的字符,可以用转义\进行转义 word='Xiao Ming said \"I\'am full\".' print(word)>>Xiao Ming said "I'am full". 另外三引号一般用在类或者函数的开头用来做大段的注释用 说到字符串一点要提一下python的字符串format格式:一般有两种 1)%操作符 name="xiao ming" age=20 print("Your name is %s,age is %d"%(name

shell之定义变量

*爱你&永不变心* 提交于 2020-02-03 00:36:48
变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据。脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则。 在 Bash shell 中,每一个变量的值都是字符串,无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。 这意味着,Bash shell 在默认情况下不会区分变量类型,即使你将整数和小数赋值给变量,它们也会被视为字符串,这一点和大部分的编程语言不同。例如在C语言或者 C++ 中,变量分为整数、小数、字符串、布尔等多种类型。 当然,如果有必要,你也可以使用 Shell declare 关键字显式定义变量的类型,但在一般情况下没有这个需求,Shell 开发者在编写代码时自行注意值的类型即可 declare 和 typeset 都是 Shell 内建命令,它们的用法相同,都用来设置变量的属性。不过 typeset 已经被弃用了,建议使用 declare 代替 1. 两个声明变量的示例 (1)将变量声明为整数并进行计算 [root@server1 declare]# cat 1.sh #!/bin/bash declare -i m n ret #将多个变量声明为整数 m=10 n=30 ret=$m+$n echo $ret (2)将变量定义为只读变量 [root@server1 declare]# declare -r