六. Python基础(6)--语法

1 ● Python3中, Unicode转字节的方法

print(bytes("李泉", encoding = 'utf-8'))

print("李泉".encode("utf-8"))

b'\xe6\x9d\x8e\xe6\xb3\x89'

 

print(bytes("李泉", encoding = 'gbk'))

print("李泉".encode("gbk"))

b'\xc0\xee\xc8\xaa'

 

2 ● Python的一种优化

python中由字母/数字/下划线组成的字符串在内存中会被优化处理, 也就是相同的由字母/数字/下划线组成的字符串, 它们在内存中的地址是相同的, 例如:

 

3. ● 可变/不可变元素与内存地址

由于字符串是不可变的类型, 所以必须开辟新的内存地址给另一个值不同字符串;

列表示可变元素, 改变一个列表的元素以后, 不用开辟新的区间.

 

4 ● 字典格式化字符串

s = 'name : %(name)s; age : %(age)d'%{'age':20,'name':'wupeiqi'} # 这里是一个匿名字典

print(s)

name : wupeiqi; age : 20

 

5 ● 字符串切片的补充

s = 'asd4fs5adf4r5345qwrwr'

s1 = s[0::1] # 等价于s1 = s[::], 这里实际上是一个浅拷贝

s1 = s[1::2] # 基数的索引

s1 = s[0::2] # 偶数的索引

 

6 ● 字典的fromkeys()函数

fromkeys()用于批量生产词典, 对于可变数据类型的value, 修改一个会影响到其它所有的value, 但是对于不可变数据类型的value, 修改一个不会影响到其它value.

dic=dict.fromkeys(['k1',True,(11,22)],[])

dic['k1'].append(6)

dic['k1'].append(7)

print(dic) # {'k1': [6, 7], True: [6, 7], (11, 22): [6, 7]}

 

dic=dict.fromkeys(['k1',True,(11,22)],'male')

print(dic) # {'k1': 'male', True: 'male', (11, 22): 'male'}

dic['k1']='female'

print(dic) # {'k1': 'female', True: 'male', (11, 22): 'male'}

 

7 ● 一种加快用户登录验证的方法

f = open('user.txt', encoding = 'utf-8')

user = input("username:")

pwd = input("password:")

for line in f:

    l = line.strip().split('|')

    if user == l[0] and pwd == l[1]:

        print("登录成功!")

六. Python基础(6)--语法的更多相关文章

  1. 五. Python基础(5)--语法

    五. Python基础(5)--语法 1 ● break结束的是它所在的循环体, continue是让它所在的循环体继续循环 # 打印: 1 10 2 10 3 10 4 10 5 10 6 10 7 ...

  2. 二. Python基础(2)--语法

    二. Python基础(2)--语法 1.实现一个简单的登录系统 '''# 形式1 n = 1 while n < 4:     name = input("请输入姓名\n" ...

  3. 二十六. Python基础(26)--类的内置特殊属性和方法

    二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...

  4. 十六. Python基础(16)--内置函数-2

    十六. Python基础(16)--内置函数-2 1 ● 内置函数format() Convert a value to a "formatted" representation. ...

  5. 四. Python基础(4)--语法

    四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次     sum += i     i ...

  6. 三. Python基础(3)--语法

    三. Python基础(3)--语法 1. 字符串格式化的知识补充 tpl = "我是%s,年龄%d,学习进度100%" %('Arroz',18) print(tpl) # 会提 ...

  7. 一. Python基础(1)--语法

    一. Python基础(1)--语法 1. 应用程序 1.1 什么是计算机(Computer)? 组成 ①运算器 arithmetic unit; ※ Arithmetic unit and cont ...

  8. Python基础:语法基础(3)

    本篇主要介绍Python中一些基础语法,其中包括:标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 1. 标识符和关键字 1.1 标识符 标识符是变量.常量.函数.属性.类.模块和包等 ...

  9. Python基础__Python语法基础、条件、循环

    之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环.本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的Python语法规则 1.语句 ...

随机推荐

  1. C# DataTable 通过Linq分组

    datatable我们是经常使用到的,但是需要对数据进行分组,具体代码如下: var result = dt.AsEnumerable().GroupBy(f => new { type = f ...

  2. 开发者说 | Apollo控制算法之汽车动力学模型和LQR控制

    参考:https://mp.weixin.qq.com/s?__biz=MzI1NjkxOTMyNQ==&mid=2247486444&idx=1&sn=6538bf1fa74 ...

  3. RLE Plots: relative log expression

    RLE Plots: Visualising Unwanted Variation in High Dimensional Data 参考:RLE Plots: Visualising Unwante ...

  4. Lab 1-3

    Lab 1-3 Analyze the file Lab01-03.exe. Questions and Short Answers Upload the Lab01-03.exe file to h ...

  5. uva10780

    将m分解质因数,然后计算次数取最小. #include <iostream> #include <cstdio> #include <cmath> #include ...

  6. 腾讯tOS死亡或注定,为何国内无自主ROM?

    http://tech.sina.com.cn/roll/2017-06-26/doc-ifyhmtrw4006354.shtml 腾讯OS死亡或注定,为何国内无自主ROM? 2017年06月26日 ...

  7. Confluence 6 编辑一个空间的配色方案

    空间默认继承全局的配色方案.但是,如果你是空间管理员的话,你可以对默认继承的全局方案进行调整,使用自定义的配色方案. 为一个空间修改配色方案: 进入空间后,然后从边栏的底部选择 空间工具(Space ...

  8. BGP华为、思科选路规则

    选路规则 华为BGP选路规则 思科BGP选路规则 第0条 下一跳是否可达,如果不可达则不参与选路 BGP 向IBGP对等体发布import引入的IGP路由时, 将下一跳属性改为自身的接口地址,而非IG ...

  9. http认证方式,工程部分实现

    学习过程中,被boss批评,要求去复习http协议,因此找了相关资料做成一个系列:对于http认证方式不清楚的可以参考我的上一篇文章 http认证方式https://www.cnblogs.com/j ...

  10. drozer安装出现的问题

    首先先检查你的手机或者模拟器是否开启了drozer agent 安装出现的问题: (1)找不到java路径: 解决方法:新建一个TXT文件,在文件中写如下内容: [executables] java ...