内容概要

  1. 格式化输出
  2. 运算符
  3. 编码
  4. 基本数据类型
  5. 深浅拷贝、小数据池

1、格式化输出

# %s 占位字符串. 实际上可以占位任何东西(用的最多的)
# %d 占位整数. 只能占位数字

# name = "wusir"
# hobby = "打篮球"
print("%s喜欢%s" % (name, hobby))

# 如果你的python是3.6以上, 此时可以使用模板字符串
# f"{变量}"

# print(f"{name}喜欢{hobby}") # 模板字符串

2、运算符

01、算数运算

02、比较运算

03、赋值运算

04、逻辑运算

01. and

并且, 左右两端必须同时为真, 最终的结果才能是真, 有一个是假, 结果就是假

2, or

或者, 左右两端有一个是真. 结果就是真. 全都是假, 结果才能是假

3, not

非.不. 非真既假, 非假既真

4. 优先级

如果出现混合逻辑运算. 顺序: () => not => and => or

例如:

print(not 1 > 5 and 4 < 6 or 7 > 8 and 1 < 9 or 5 > 6)
True先算 not: 1 >5:取反,为True再算 and: True and 4 < 6 :True , 7 > 8 and 1 < 9 :False最后 or:  True or Flase or 5 > 6  结果为:True

5. a or b

如果 a 是0,结果是b如果 a 是非0,结果就是aprint(1 or 2) # 1
print(0 or 3) # 3
print(1 or 5) # 1
print(0 or 5) # 5

#0就是假,非0就是真

6. a and b

和 or 相反
print(1 and 2) # 2
print(0 and 3) # 0
print(1 and 5) # 5
print(0 and 5) # 0

05、成员运算

例如:

s = "alex特别喜欢太白金星"
if "胡辣汤" in s:print("胡辣汤在 s 变量中")
else:print("胡辣汤不在 s 变量中")
胡辣汤不在 s 变量中print("胡辣汤" in s)
False
print("胡辣汤" not in s)
True

3、编码

01. ASCLL码

早期. 计算机是美国发明的. 普及率不高, 一般只是在美国使用. 所以. 最早的编码结构就是按照美国人的习惯来编码的. 对应数字+字母+特殊字符一共也没多少. 所以就形成了最早的编码ASCII码. 直到今天ASCII依然深深的影响着我们.

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

02. GBK国标码

随着计算机的发展. 以及普及率的提高. 流行到欧洲和亚洲. 这时ASCII码就不合适了. 比如: 中文汉字有几万个. 而ASCII最多也就256个位置. 所以ASCII不行了. 怎么办呢? 这时, 不同的国家就提出了不同的编码用来适用于各自的语言环境.比如, 中国的GBK, GB2312, BIG5, ISO-8859-1等等. 这时各个国家都可以使用计算机了.

GBK, 国标码占用2个字节. 对应ASCII码 GBK直接兼容. 因为计算机底层是用英文写的. 你不支持英文肯定不行. 而英文已经使用了ASCII码. 所以GBK要兼容ASCII.

这里GBK国标码. 前面的ASCII码部分. 由于使用两个字节. 所以对于ASCII码而言. 前9位都是0

字母A:0100 0001 # ASCII
字母A:0000 0000 0100 0001 # GBK 国标

03. Unicode 万国码

国标码的弊端: 只能中国用. 日本就垮了. 所以国标码不满足我们的使用. 这时提出了一个万国码Unicode. unicode一开始设计是每个字符两个字节. 设计完了. 发现我大中国汉字依然无法进行编码. 只能进行扩充. 扩充成32位也就是4个字节. 这回够了. 但是. 问题来了. 中国字9万多. 而unicode可以表示40多亿. 根本用不了. 太浪费了. 于是乎, 就提出了新的UTF编码.可变长度编码

UTF-8: 每个字符最少占8位. 每个字符占用的字节数不定.根据文字内容进行具体编码. 比如. 英文. 就一个字节就够了. 汉字占3个字节. 这时即满足了中文. 也满足了节约. 也是目前使用频率最高的一种编码

UTF-16: 每个字符最少占16位.
GBK: 每个字符占2个字节, 16位

# 用的最多的编码就是utf-8
# 1. 英文: 8bit -> 1byte
# 2. 欧洲文字: 16bit -> 2byte
# 3. 中文: 24bit -> 3个字节 中文有9万多个

# python2.x使用的是ascii
# python3.x内存中使用的unicode, 文件存储使用:utf-8

# s = "古力娜扎" # 字符串直接就是unicode
# print(s)# # 想要存储到文件中. 必须进行转换 => utf-8 或者GBK

04. 编码与解码

编码之后的数据是bytes类型的数据,还是原来的数据只是经过编码之后表现形式发生了改变而已。

bytes的表现形式:

  • 英文 b'alex' 英文的表现形式和字符串没什么两样
  • 中文 b'\xe4\xb8\xad' 这是一个汉字的UTF-8的bytes表现形式
# s = "lishichao"
# print(s.encode("utf-8"))  # 将字符串编码成UTF-8
# print(s.encode("GBK"))    # 将字符串编码成GBK
#结果:
# b'lishichao'    # 英文编码之后的结果和源字符串一致
# b'lishichao's = "李世超"
print(s.encode("utf-8"))  # 将字符串编码成UTF-8
print(s.encode("GBK"))    # 将字符串编码成GBK
#结果:
# b'\xe6\x9d\x8e\xe4\xb8\x96\xe8\xb6\x85'     # 一个中文的UTF-8编码是3个字节
# b'\xc0\xee\xca\xc0\xb3\xac'                 #  一个GBK的中文编码是2个字节

#使用decode()来进行解码操作,吧bytes类型的数据还原回我们熟悉的字符串:print(b'\xe6\x9d\x8e\xe4\xb8\x96\xe8\xb6\x85'.decode('UTF-8'))    print(b'\xc0\xee\xca\xc0\xb3\xac'.decode('GBK'))

编码和解码的时候都需要制定编码格式:

s = "我是文字"
bs = s.encode("GBK") # 我们这样可以获取到GBK的文字
# 把GBK转换成UTF-8
# 首先先要把GBK转换成unicode. 也就是需要解码
s = bs.decode("GBK") # 解码
# 然后需要进行重新编码成UTF-8
bss = s.encode("UTF-8") # 重新编码
print(bss)

# 用什么编码,就用什么解码。

4、基本数据类型

4.1 python基本数据类型

  1. int ==> 整数. 主要用来进行数学运算
  2. str ==> 字符串, 可以保存少量数据并进行相应的操作
  3. bool==> 判断真假, True, False
  4. list==> 存储大量数据.用[ ]表示
  5. tuple=> 元组, 不可以发生改变 用( )表示
  6. dict==> 字典, 保存键值对, 一样可以保存大量数据
  7. set==> 集合 保存大量数据. 无序;不可以重复. 其实就是不保存value的dict

4.2 int

  整数类型,主要用来数学运算,只有一个方法。

a = 3 # 二进制用11表示
print(a.bit_length())  #计算二进制长度
#结果为:2

4.3 bool

  布尔值只有两个:True、Flase 主要用来条件判断。

基本数据类型之间互相转换

bool => int
a = True
b = False
print(int(a))
print(int(b))# 整数中 0=> False 非0 =>True#所有表示空的东西都是假
print(bool(""))
print(bool("a"))
print(bool(None))  #None 表示空 

4.4 str

  把字符连成串. 在python中用', ", ''', """引起来的内容被称为字符串.

01、字符串的索引和切片

索引:

# 索引就是第几个字符, 索引从0开始
# s = "jay"
# print(s[1])   #a  []表示索引
# print(s[2])   #y
# print(s[-1])  #y
# print(s[-3])  #j

切片:

# s = "alex昨天看冯提莫直播. 刷了1w个鱼丸"
s[4:8]      # 默认从左到右切, 顾头不顾尾[start, end)
s[-6:-2]
s[8:4]      #这样取不到值
s[:6]        # 从头开始切, 切到6为止
s[:]          # 从头到尾 # 带有步长的切片
s = "wusir喜欢和alex一起去探讨课件"
print(s[3:8:2]) # 从3到8 每2个出来1个  i喜和
print(s[::2])   # 从头到尾 步长为2# 如果步长为负数, 从右到左
print(s[::-1])
print(s[-1:-6:-2])
print(s[-3::-3])

02. 字符串相关操作:

  切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的

- 大小写转换:

1. 首字母大写

# s = "alex"
# s1 = s.capitalize()  # 首字母大写, 字符串是不可变的数据类型. 每次操作都会返回新字符串
# print(s)
# print(s1)

View Code

2. upper() 把所有字母转化成大写

# s = "wusir"
# s1 = s.upper()
# print(s1)
# while 1:
#     game = input("请输入你喜欢玩儿的游戏(请输入Exit退出程序):")
#     if game.upper() == "EXIT": # 忽略大小写
#         break
#     print("你喜欢的游戏是%s" % game)

View Code

3. lower() 全部转化成小写. 对一些欧洲文字不敏感

# s = "wusir和ALEX关系不一般"
# print(s.lower())

View Code

4. title() 标题,  每个单词的首字母大写

# s = "alex wusir ritian taibai nezha 女神"
# print(s.title())

View Code

-  切来切去:

1. split() 字符串切割

# s = "alex_wusir_taibai"
# ret = s.split("alex_wusir_taibai") # 如果切割的位置在边缘. 一定能获取到空字符串
# print(type(ret)) # <class 'list'> 列表
# print(ret)

View Code

2. replace()  字符串的替换

# s = "alex dsb, wusir xsb"
# # print(s.replace("sb", "烧饼"))
# print(s.replace("sb", ""))

View Code

3. strip()  去掉空白 => 脱掉空白

# # s = "    哈哈哈     哈哈哈\n\t" # \t 制表符(缩进)  \n 换行
# # print(s.strip()) # 去掉左右两端的空白(必须要记住)# username = input("用户名:").strip()
# password = input("密码:").strip()
# if username == "alex" and password == "123":
#     print("登录成功了")
# else:
#     print("登录失败")

View Code

while 1: print(input(">>>:").strip("吗呢么?")+"!")
# 执行结果: 把末尾的"吗呢么?",替换成"!"
>>>:你好吗
你好!

View Code

- 找来找去

s = "php是全世界最好的编程语言"
# print(s.startswith("java")) # 判断这句话是否是以xxx开头
# print(s.endswith("php")) #  判断是否以xxx结尾# s = "java, php, python, c++"
# print(s.count("av")) # 计算xxx字符串中出现的次数# s = "海王_剑姬_诺手_余小C喜欢用诺手"
# print(s.find("手")) # 找的是索引
# print(s.find("胡")) # 如果不存在. 返回-1
# print(s.index("手")) # index: 索引
# print(s.index("胡")) # index如果找不到. 报错

View Code

-判断组成

# s = "abc胡辣汤壹123@#$%"
# print(s.isdigit()) # 判断字符串是否由数字组成
# print(s.isalpha()) # 判断是否由文字的基本组成.
# print(s.isalnum()) # 是否由数字. 字母组成, 能屏蔽特殊字符# s = "123123壹佰贰拾伍万贰千三百四十六"
# print(s.isnumeric()) # 判断是否是数字, 两, 俩

View Code

len() 求长度(字符串、列表),  内置函数

# i = 0
# while i < len(s): # 遍历字符串
#     print(s[i])
#     i += 1

View Code

4.5 列表和元祖

  能装对象的对象叫列表. 存在的意义:存储大量的数据
  列表使用[]括起来, 内部元素用逗号隔开,列表是可变数据类型。

# lst = ["张三丰", "张全蛋", "张无忌", "张国立", "张翠山", "张二嘎"]# 类表和字符串一样也有索引和切片
# print(lst[1])
# print(lst[1::2]) # 切片功能和字符串一模一样
# print(lst[-1::-2]) #

- 列表的增删改查:

添加:

01. append 追加 向列表的最后放数据

# lst = []  # list()
# lst.append("手表")
# lst.append("腰带")
# lst.append("相机")
# lst.append("陈冠希")

View Code

02. insert 插入.

# lst = ["倚天", "射雕", "天龙", "笑傲江湖"]
# lst.insert(2, "少林足球")
# print(lst)

View Code

03. extend() 迭代添加(不常用)

# lst= ["小龙女", "李若彤", "阿娇", "景甜"]
# lst.extend(["张三丰", "李四", "王二麻子", "李老五"])
# print(lst)

View Code

删除:

01. pop 指定索引删除,会返回删除的元素

# lst = ["李嘉诚", "马云", "马化腾", "王健林", "你"]
# lst.pop(1)
# print(lst)

View Code

02. remove 指定元素删除

# lst.remove("马化腾") # 删除. 指定某一个元素删除
# print(lst)

View Code

03. del

# del lst[3]
# print(lst)

View Code

04. clear 清空

# lst.clear() # 清空列表
# print(lst)

View Code

修改:

# lst = ["马大帅", "乡村爱情", "刘老根", "圣水湖畔"]
# lst[1] = "东北一家人" # 索引修改
# print(lst)

View Code

查询-> 用的最多的是索引

# lst = ["马大帅", "乡村爱情", "刘老根", "圣水湖畔"]
# # # print(lst[3])
# # # 列表是一个可迭代对象. 可以使用for循环
# # for item in lst: # item:列表中的每一项元素
# #     print(item)
#
# print("马大帅" in lst) # 成员判断

View Code

- 相关操作:

sort() 排序

# lst = [1,5,4,7,5,4,11,2,5,44,5,1,3,6]
# # reverse: 只要看到它. 一定是反着来
# lst.sort(reverse=True) # 排序
# print(lst)# lst = ["张无忌", "赵敏", "周芷若", "小昭", "阿离"]
# lst.reverse() # 列表的翻转
# print(lst)

View Code

range() 循环列表

# range可以让for循环数数
# for i in range(100): # [0, 100)  100次循环
#     print(i)# for i in range(10, 20): # [10, 20)
#     print(i)# for i in range(10, 20, 2): # [10, 20) 每2个出1个
#     print(i)# 重点:
# lst = ["成功", "不要", "30岁", "做人", "思想", "学习是自己的", "找家长"] # 0-4
#
# for i in range(len(lst)): # 可以拿到索引和元素
#     print(i, lst[i])# i = 0
# for item in lst: # 这个循环看不到索引
#     print(i, item)
#     i += 1

View Code

列表的深浅拷贝

python的赋值机制

# a = 20
# b = a
# print(a is b)   # 判断内存地址是否一样
#Truea = [1,2,3]
b = a          #赋值操作没有进行拷贝. 还是同一个对象
print(a is b)
print(id(a))   #指向的内存地址一样
print(id(b))   #指向的同一个对象a.append(4444)
print(a)
print(b)

View Code

浅拷贝

a = [1,2,3]
b = a[:] # 此时对a进行了复制. 此时创建了新的列表, 浅拷贝
print(a is b)
print(id(a))
print(id(b))
a.append(4444)
print(a)
print(b)浅拷贝出现的问题.  解决方案:用深拷贝
a = [1,2,3, [123, 456]]
b = a.copy()
print(a is b)
#False
print(a[3] is b[3])   #只能拷贝到第一层,嵌套的列表还是同一个对象
#Truea.append(4444)
print(a)
print(b)

View Code

深拷贝

# import copy # 导入一个copy模块
# lst = [1,2,3, [123, 456]]
# lst2 = copy.deepcopy(lst) # 深度拷贝(深度克隆, 原型模式)
# print(lst2)
#
# print(lst is lst2)
# print(lst[3] is lst2[3])
# # 注意. 此时不论任何操作都不会互相的影响
# lst[3].append("胡辣汤")
# print(lst)
# print(lst2)

View Code

- 元祖

# 元组是不可变的列表, 又被成为只读列表
# 元组用小括号表示, 并且空元祖用tuple(), 如果元组中只有一个元素,必须在后面加逗号
# # 元组是可迭代对象

# tu = (1,) # 此时认为()是数学运算, 加了逗号就是元组
# print(type(tu))
# print(tu)# tu = ("金庸", "古龙", "黄奕", "孙晓")
# for t in tu:
# print(t)

4.6 字典

  字典存储数据的时候. 它是根据hash值进行存储的. 字典中所有的key必须是可哈希的.
  字典用{}表示. 以key:value的形式进行保存数据

# dic = {"jay":"周杰伦", "wlh":"王力宏", "jj":"林俊杰"}
# print(dic)
# print(type(dic))# # 不可变就是可哈希
# dic = {1:"呵呵", "hh":"哈哈", []:"吼吼"} # unhashable type: 'list'  列表不能是key
# print(dic)

- 字典的增删改查

# 查询

# dic = {"金庸": "扫地僧", "古龙": "天机老人", "黄奕": "alex"}
# print(dic["金庸"]) # 用的最多的是这种写法
# print(dic["李寻欢"]) # KeyError: '李寻欢' 没有这个key# print(dic.get("李寻欢")) # 默认情况下. 如果找不到这个key, 返回None
# print(dic.get("李寻欢", "没这个人")) # 当key不存在, 返回第二个数据
# print(dic["李寻欢"])

View Code

# 添加

# dic = {}
# dic["赵本山"] = "乡村爱情协奏曲" # dic[新key] = value
# dic["赵本水"] = "综艺节目"
#
# dic["赵本山"] = "马大帅" # 替换., 修改. 当key存在了的时候. 是修改
# print(dic)# # dic.setdefault("安安") # 如果只有一个参数. value放空
# dic.setdefault("安安", "很高") # 如果有两个参数. 可以执行新增
# dic.setdefault("安安", "很瘦") # 当执行到这句话的时候. 字典中已经有了安安. 此时就不会再执行新增了
# print(dic)# setdefault执行流程:
# 1.首先判断你给的key是否在字典中出现了. 如果出现了. 就不执行任何新增操作. 如果没有出现. 执行新增
# 2.不论前面是否执行了新增. 最后都会根据你给的key把value查询出来# dic = {"安安": "班主任", "大安安":'大美女'}
# ret = dic.setdefault("大安安", "大美女")
# print(dic)
# print(ret)# lst = [11,22,33,44,55,66,77,88,99]
# ret = {}
# for item in lst:
#     if item < 66:
#         if not ret.get("key1"):
#             ret["key1"] = [item]
#         else:
#             ret["key1"].append(item)
#     else:
#         if not ret.get("key2"):
#             ret["key2"] = [item]
#         else:
#             ret["key2"].append(item)
# print(ret)# 难
# for item in lst:
#     if item < 66:
#         ret.setdefault("key1", []).append(item)
#     else:
#         ret.setdefault("key2", []).append(item)
# print(ret)

View Code

# 删除

# dic = {"alex": "路飞", "wusir": "alex", "老男孩": "linux", "linux":"成全了老男孩"}
# dic.pop("alex") # 根据key删除
# print(dic)
# dic.clear()# del dic['wusir'] # 根据key删除
# print(dic)

View Code

# 查询补充: keys(), values() , items()

dic = {"alex": "路飞", "wusir": "alex", "老男孩": "linux", "linux":"成全了老男孩"}
# print(dic.keys()) # 像列表, 不是列表, 山寨列表
# for item in dic.keys(): # 可以直接拿到每一个key
#     print(item)
#     print(dic[item])# # 记这个
# for k in dic: # 字典是可迭代的. 此时拿到的k就是字典中所有的key
#     print(k)
#     print(dic[k])# print(dic.values()) # 获取到所有的value.# for v in dic.values(): # 很少用到这个
#     print(v)
#
# print(dic.items())# 直接获取到key和value的方式
# for k, v in dic.items(): # dic.items()  => 打开之后是元组 =>  打开是=> key, value
#     print(k, "=>", v)

View Code

#解构, 解包: 把元组, 列表中的每一项拿出来赋值给前面的变量

# 要求:数据和变量要能对的上
# a, b, c = (1, 2, 3) # (1, 2)
# print(a)
# print(b)# dic = {"aa":"安安", "xx":"晓雪", "xr":"小茹"}# for k in dic:
#     print(k)
#     print(dic[k])# for k, v in dic.items():
#     print(k)
#     print(v)

View Code

# 字典的嵌套

wf = {"name": "汪峰","age": 42,"wife": {"name":"章子怡","age": 41,"hobby":["拍戏", "当导师.."],"assit":{"name":"章助理","age":18}},"children":[{"name":"汪小峰1号", "age":18},{"name":"汪小峰2号", "age":8},{"name":"汪小峰3号", "age":2}]
}
# # 查询汪峰2儿子的年龄
# print(wf['children'][1]['age'])
# # 汪峰老婆的助理的年龄
# print(wf["wife"]['assit']['age'])
# 给汪峰小儿子加10岁
wf['children'][2]['age'] = wf['children'][2]['age'] + 10
print(wf)

View Code

# 字典没有索引和切片

dict类方法:fromkeys

d = dict.fromkeys("周杰伦", ["昆凌"])
print(d)
d['杰'].append("蔡依林")
print(d)
# {'周': ['昆凌'], '杰': ['昆凌'], '伦': ['昆凌']}
# {'周': ['昆凌', '蔡依林'], '杰': ['昆凌', '蔡依林'], '伦': ['昆凌', '蔡依林']}

# 1. fromkeys返回新字典. 不是在原来字典的基础上干活的
# 2. 所有的key共享同一个value

fromkeys执行的效果: 把前面的那个参数的数据进行迭代. 和后面的参数组合成一个key:value. 创建一个新字典

# print(dict.fromkeys("国产动画", "白蛇,缘起")) # fromkeys的正确用法

4.7 set 集合

 # set集合特点:无序不重复,内部元素必须可哈希, set集合用{}表示. 如果是空集合(set())

# s = {"胡辣汤", "灌汤包", "热干面", "牛油火锅", "乱炖", "乱炖", "乱炖", "乱炖", "乱炖", "乱炖"}
# print(s)

# 去重复 最重要
# lst = ["胡辣汤", "灌汤包", "热干面", "牛油火锅", "乱炖", "乱炖", "乱炖", "乱炖"]
# # 把列表转化成set集合
# s = set(lst)
# lst = list(s)
# print(lst)

 # 增删改查

# s = set()
# s.add("张无忌") # 添加
# s.add("胡辣汤")
# s.add("粘糕")
# print(s)# s = {"年年有余", "炖鸡", "凉菜", "饺子", "肘子", "猪蹄子"}
# # ret = s.pop() # 随机删除
# # s.remove("炖鸡")
# # print(s)
#
# # 修改只有一个方案. 先删除,. 后添加
# s.remove("炖鸡")
# s.add("锅包肉")
# print(s)s = {"年年有余", "炖鸡", "凉菜", "饺子", "肘子", "猪蹄子"}
for el in s: # set集合可以被迭代print(el)

View Code

4、is 和 ==

# == 比较的是数据
# is 比较的是内存地址

# lst1 = [1,2,3]
# lst2 = [1,2,3]
# print(lst1 == lst2)
# print(lst1 is lst2)

s1 = "alex"
s2 = "alex"print(s1 is s2) # True, 原因是有小数据池进行缓存. 优化你的字符串创建过程
print(id(s1))
print(id(s2))# String interning

# 小数据池: python会自动的对我们写的字符串, 数字, 布尔.进行缓存.

 

5、列表和字典的循环删除

正常循环删除

# lst = ["jay", "jj", "Jolin", "alex"]
#  lst.clear() 不准用clear
#  for item in lst: # 删不干净
#    lst.remove(item)

1. 把要删除的元素记录在一个新列表中

new_lst = []
for el in lst:new_lst.append(el)for item in new_lst: # 循环新列表. 循环出来的都是要删除的内容lst.remove(item) # 删除原来的列表中的内容print(lst)

 lst = ["金城武", "李嘉诚", "鹿晗", "韩露", "李易峰", "吴亦凡"]
  删除姓李的
#  把要删除的人装新列表中

# new_list = []
# for item in lst:
#     if item.startswith("李"):
#         new_list.append(item)
#
# # 循环新列表. 删除老列表
# for item in new_list:
#     lst.remove(item)
#
# print(lst)    

字典删除一样的操作

dic = {"jay":"呵呵", "jj":"哈哈", "Jolin":"吼吼"}new_lst = []#字典在迭代中,不能改变大小
for k in dic:dic["哈哈哈"] = "呵呵"dic.pop(k)     # dictionary changed size during iterationnew_lst.append(k)#循环列表,去删除字典
for k in new_lst:dic.pop(k)print(dic)

转载于:https://www.cnblogs.com/root0/articles/10235561.html

Python开发【第二篇】:基础数据类型相关推荐

  1. Python开发第一篇 基础篇(下)

    一.python种类 1.1 Cpython python官方版本,使用c语言实现,运行机制:先编译,py(源码文件)->pyc(字节码文件),最终执行时先将字节码转换成机器码,然后交给cpu执 ...

  2. python学习[第二篇] 基础二

    控制结构 if 语句 # only if blockif condition:if_true_block# if_else blockif condition:if_true_block else:i ...

  3. Python:第二篇【Python】进阶-关东升-专题视频课程

    Python:第二篇[Python]进阶-614人已学习 课程介绍         本书是智捷课堂开发的立体化图书中的一本,所谓"立体化图书"就是图书包含:书籍.视频.课件和服务等 ...

  4. Agv、Rgv 车辆控制调度系统开发第二篇

    系列文章目录 Agv.Rgv 车辆控制调度系统开发第二篇(理论片) 文章目录 系列文章目录 前言 一.什么是调度系统? 问题 二.问题分析 1.寻找路线 2.避碰算法 3.移车算法 4.解锁算法 总结 ...

  5. 带你写爬虫(python)第二篇----抓取网易云音乐下面的评论(API方式)

    抓取网易云音乐<大学无疆>的评论 一直喜欢使用网易云音乐,网易云歌曲下面的评论给其加分不少,所以这一篇来写一下怎么抓取歌曲下面的评论. 准备工作 目标网页:http://music.163 ...

  6. python学习日记(基础数据类型及其方法02)

    python的变量 python中的变量不需要声明,变量载使用前必须被赋值,变量被赋值以后才会被创建. 在python中变量就是变量,没有数据类型.我们所说的类型是变量所指向内存中的对象的类型. py ...

  7. android 串口开发第二篇:利用jni实现android和串口通信

    一:串口通信简介 由于串口开发涉及到jni,所以开发环境需要支持ndk开发,如果未配置ndk配置的朋友,或者对jni不熟悉的朋友,请查看上一篇文章,android 串口开发第一篇:搭建ndk开发环境以 ...

  8. [Python笔记]第一篇:基础知识

    本篇主要内容有:什么是python.如何安装python.py解释器解释过程.字符集转换知识.传参.流程控制 初识Python 一.什么是Python Python是一种面向对象.解释型计算机程序设计 ...

  9. python(5)- 基础数据类型

    一 int 数字类型 #abs(x) 返回数字的绝对值,如abs(-10) 返回 10 # ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5 # cmp(x, y) 如果 ...

  10. python知识笔记_[Python笔记]第一篇:基础知识

    二.为什么要使用Python 优点: 学习成本低 开发效率高–拥有丰富而且强大的第三方库 高级语言–不用关心底层运作细节 可扩展性–Python是一门胶水语言,能于其他语言如C ,C#进行扩展 缺点: ...

最新文章

  1. 【一篇文章搞懂】dockerfile构建镜像的命令
  2. 年轻的工程师如何月入伍万XD
  3. linux python 永久添加自己的模块路径
  4. 自学python需要安装什么-初学 Python 需要安装哪些软件?
  5. 嵌套组合图echarts
  6. MySQL基础学习特殊篇 入门限定
  7. Linux与windows共享文件的神器:Samba
  8. 老旧计算机桌面,四种旧电脑改造桌面虚拟化的方案
  9. python钻石和玻璃球游戏_python使用pygame实现笑脸乒乓球弹珠球游戏
  10. 对比Excel两个sheet的数据是否相同
  11. Visual Basic Script 程序参考手册-学习第4天:数组列表及Msgbox函数
  12. 深入学习VMware vSphere---基础知识
  13. 数据结构与算法实验题 9.8 转移炸弹
  14. 什么高大填空四个字动人_照样子填空填四字成语什么什么什么地想
  15. ENVI入门之不同影像镶嵌之后颜色不一样的色差问题
  16. Linux 设置简单密码
  17. 海南省大数据管理局项目建设处刘雄:区块链技术在海南政务服务领域的典型应用
  18. Java反编译利器JD-GUI
  19. 学习笔记(3):EXCEL VBA编程进阶-2.9 综合应用(多工作表的条件筛选)
  20. 企业微信私域流量运营神器

热门文章

  1. STM32定时器时间计算公式
  2. 实战教程|使用知晓云快速制作一个简单的个人博客
  3. 加油打劲,走出舒适区!
  4. 大地坐标系到站心坐标系(ENU)坐标转换(提供QT和JAVA源码)
  5. 云计算公司如何打败亚马逊AWS?
  6. 团队作业第二周刘先润个人篇
  7. 云服务器搭建网易云音乐 API —— node 项目
  8. Microsoft Excel 教程:如何在 Excel 中更改单元格的格式?
  9. 使用AVPlayer实现在线音频播放注意问题
  10. 熊猫烧香背后黑客社会3