计算机基础知识和python基础(一)

计算机基础知识与python基础

作为python程序员小白,现在开始与大家分享我所学python的知识

1.计算机基础知识

1.1计算机内存大小

计算机内存大小,从小到大依次为bit(二进制),Byte(字节),kB,MB,TB…

8bit=1Byte

1kB=1024B

1MB=1024KB

以此类推

1.2计算机的原码,反码,补码

原码最高位为符号位,1表示负,0表示负

计算机内正数原码,反码,补码是本身

只有负数才有反码,补码。

例如 24 原码为 00011000,补码,反码依然是这个

-24 原码为10011000

反码为除最高位不变,其他位取反,11100111

补码在反码的基础上加1,则为11111000

为什么计算机存储负数要存储补码?

因为在计算机硬件内部没有减法器,只有加法器。如果负数使用原码保存进行数字运算时,则会出现运算错误。

例如 3 - 24

00000011 - 10011000= 10010101 结果为-149 ,显然不对

2. python基础知识

2.1 python的介绍

python是一门解释型编程语言

Python 解释器(一行一行的执行),执行效率低

C语言 和 JAVA语言要编译生成可执行文件 ,根据编译后的译文执行所有,效率更高。

缺点:

①执行效率慢,但硬件可以弥补,但一般密集型的运算还是c语言和c++

②代码无法加密

优点:

简单,易学,开源,免费,高层语言,可移植性,面向对象,可扩展性,丰富的库。

2.2 python的快捷键

python里一些常用快捷键的使用:

ctrl+a 全选

ctrl+x 剪切

ctrl+s 保存

ctrl+z 撤销

ctlr+c 复制

ctrl+v 粘贴

ctrl+ shift+z 反撤销

鼠标点击+shift不放 选中部分

鼠标点击+alt/option 键不放 创建多个光标

ctrl + alt+ L 代码规范化

2.3 python的内存空间问题

为什么说python相比c与java不会浪费内存而且不会溢出?

python里会根据所需要的内存大小而开辟相应的内存空间,而c是先开辟一个空间,再往里面 放入数据,比如整型四个字节,一旦超过四个字节就会溢出,及超过1 11111111 11111111 11111111 11111111,而python会根据所需要的内存大小再开辟一个空间,如果数据修改了,再放入到另一个内存空间。所以python数据不会溢出

在c语言中整型里是四个字节,比如56,要存储 00000000 00000000 00000000 00111000 而在python里 只需要存储一个字节就可以了,存储 0b00111000

即可,所以相比c,python更能节约内存空间

2.4 python的注释

ctrl+/,可以快速注释一行代码

使用#表示一个单行注释

使用 ‘’’ ‘’‘’‘’三个单引号与三个双引号注释多行

2.5 python的数据类型

关键字,

数字(整数,浮点数),

字符串(必须要用一对单引号或者双引号包裹),

布尔值(表示正确或错误)true or False,

数组(列表 list Tupble Dic set)

2.6 python标识符的规则:

严格区分大小写
由数字 ,字母 ,下划线组成 ,不能以数字开头
不能使用除了下划线以外的特殊字符
不能使用关键字(python里特殊意义的单词)

import keyword
print(keyword.kwlist)  可查看所有关键字

变量名要做到顾名思义: 遵守一定的命名规则 小

驼峰命名法 userNameAndPassword 第一单词字母小写,其他字母每个单词前面大写

大驼峰命名法 UserNameAndPassword每个单词的前面都大写

用_连接 user_name_and_password python使用

可以使用汉字,但尽量不要用
尽量不要使用系统内置的函数名,变量名和类名

2.7 python的二进制,八进制,十六进制的转换

0b111000 以0b开头表示二进制
0o111000 以0o开头表示为八进制
0x111000 以0x开头为十六进制

bin()可以转换为二进制
oct()转换为八进制
hex()转换为十六进制

2.8 python语句的输入输出

Python里使用print内置函数来输出一个结果

普通输出

print(‘hello’) # 在控制台里输出 hello 字符串

print 可以输出一个或者多个数据,多个数据之间使用 逗号 分割

多个值之间默认使用空格进行分割,可以通过参数 sep 来修改,使用 sep 可以修改多个值之间的连接方式

end 用来表示当值打印完成以后,最后输出的字符,默认是\n 表示的是换行

file 用来指定输出的位置。默认是输出到控制台,可以修改数据的输出位置

print(‘呵呵呵’, ‘哈哈哈’, ‘嘿嘿嘿’, ‘嘻嘻嘻’, ‘嘤嘤嘤’, sep=’*’, end=’============’)

格式化输出

name = ‘彭于晏’
addr = ‘河南’
age = 20

使用指定的字符进行占位

%s 表示字符串的占位

%d 表示的整数占位符

print(‘大家好,我系%s,我来自上海,我今年18岁了’ % name)

print(‘大家好,我系%s,我来自%s,我今年%d岁了’ % (name, addr, age))

n = 8

print(‘大家好,我是第%d号偶像练习生’ % n)

print(‘大家好,我是第%3d号偶像练习生’ % n) # %3d ==> 以指定长度的字符输出,如果长度不够,会使用空格在左边补齐,如果长度超出了,会正常显示

print(‘大家好,我是第%-3d号偶像练习生’ % n) # %-3d ==> 如果长度不够3位,会在右侧使用空格补齐

print(‘大家好,我是第%03d号偶像练习生’ % n) # %03d ==> 如果长度不够3位,会在左侧使用0补齐

%f 表示浮点数的占位符

%.nf 表示保留小数点后n位

%x ==> 以十六进制显示数字

%X ==> 以大写十六进制显示数字

%0 ==> 以八进制的形式显示数字

%c ==> 把数字转换成为编码对应的字符

money = 100.54

print(‘我今天挣了%f元’ % money)

print(‘我今天挣了%.2f元’ % money)

二进制最大的单个数字是 1
八进制最大的单个数字是 7
十进制最大的单个数字是 9
十六进制最大的单个数字是 0123456789ABCDEF
如果想要以为二进制的形式输出,没有对应的占位符,需要使用bin
a = 14 # 默认是十进制的数字

print(’%x’ % a) # e
print(’%X’ % a) # E

print(’%o’ % a) # 16 八进制的16

print(bin(a)) # 0b1110

print(’%c’ % 300) # Z

输入语句,就是接受用户输入的内容
python里使用 input 内置函数来接受用户输入的内容

变量 answer 用来接收用户输入的内容

接收用户输入内容,结果永远是一个字符串类型的数据

answer = input(‘小哥哥,请告诉我你的银行卡密码好不好?’)

print(‘用户输入的内容是%s’ % answer)
接收到用户输入的数据以后,是一个字符串类型

age = input(‘请输入您的年龄:’)
print(age) # “18”
print(type(age)) # <class ‘str’>

换行输出

\n 表示换行

print(‘hello’, ‘word’, sep=’\n’)

\ 表示转义字符,是对 \ 后面紧跟的字符进行转义
\n 表示换行
\t 表示一个制表符
\ 用来表示一个
print(‘hello\nworld’)
print(‘hello\tworld’)
print(‘hello\nworld’)
print(r’hello\nworld’)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值