python学习笔记 | 基础语法(一)

参考:廖雪峰python教程


(补)命令行

  1. 退出命令 exit()
  2. 运行一个.py文件 python hello.py
  3. python交互式环境会把每一行python代码的结果自动打印出来,但是直接运行python代码却不会。

输入与输出

输出

  1. 单引号双引号均可。
print('hello world')
print("hello world")
  1. 可以拼接多个字符串
print("hello",'world') #遇到逗号会输出一个空格

hello world

  1. 直接打印结果
print(100+200)

300

  1. 可以拼接字符串和结果,无需格式控制符
print('100 + 200 =',100+200)

100 + 200 = 300

输入

  1. input()
name = input()
print("hello,",name)

abc
hello, abc

  1. input可以打印提示信息
name = input("please enter your name:")
print("hello",name)

please enter your name: abc
hello abc

input() 只能返回字符串!!
需要进行强制类型转换

a=input()
b=input()
a=int(a)
b=int(b)
print(a+b)

数据类型、变量、运算(两种除法)

字符串

  1. 单引号双引号均可
  2. 如果单引号也是字符串的一部分,可以用双引号
print("I'M OK")
  1. 如果双引号也是一部分,可以转义字符,其他转义字符与C里类似
print("I'M \"OK\"")

I'M "OK"

  1. 字符串内部的换行处理
print("line1\nline2\nline3")
print('''line1
line2
line3''')

line1
line2
line3
line1
line2
line3

布尔值

布尔值True False (首字母大写)直接进行and or not 计算

print(True or False)
print(True and False)
print(not True)

其他

空值 None
列表、字典、自定义数据类型等等

变量

赋值:同一个变量可以反复赋值,而且可以是不同类型的值,这种叫做动态语言。与之相对的静态语言是C那种,int a;a=2;

a = 2
print(a)
a='abc' #可以赋值不同的数据类型
print(a)

常量

python没有机制保证常量不会被改变,所以一般用全部大写的变量名表示常量(习惯用法)(不同于const int

运算(两种除法)

print(10/3) #精确除法
print(10//3) #C中的除法

3.3333333333333335
3

整数和浮点数(一些说明)

  • Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的。
  • Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf

字符串编码问题

字符串编码问题

python 使用unicode编码

print("包含中文的str")

包含中文的str

编码转换

对于单个字符的编码,
Python提供了ord()函数获取字符的整数表示,
chr()函数把编码转换为对应的字符:

ord('A')
chr(65)

65
'A'

字符串长度

print(len('abc'))

3

格式控制符

print('Hello, %s' % 'world')
print('Hi, %s, you have $%d.' % ('Michael', 1000000))

Hello, world
Hi, Michael, you have $1000000.

可以指定位数及补0等

print('%d'% 3)
print('%2d'% 3)#输出两位,左补空格
print('%02d'% 1)
print('%.2f' % 3.1415926)

3
(空格)3
01
3.14

格式化的format()方法

用传入的参数依次替换字符串内的占位符{0}、{1}

print('Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125))
print('{0},{0},{1},{1}'.format('Alice','Bob'))

Hello, 小明, 成绩提升了 17.1%
Alice,Alice,Bob,Bob

条件判断

age = 3
if age >= 18:
    print('adult')
elif age >= 6:
    print('teenager')
else:
    print('kid')

注意

  1. 缩进原则
  2. 判断条件无需加括号,但其后要加冒号
  3. else if 缩写为 elif
  4. 短路特性
age = 20
if age >= 6:
    print('teenager')
elif age >= 18:
    print('adult')
else:
    print('kid')

teenager
补充
与input联合的用法:

birth = input('birth: ')
if birth < 2000:
    print('00前')
else:
    print('00后')

这样写会报错,原因是input()的返回类型为str
改写:使用int()函数进行类型转换

s = input('birth: ')
birth = int(s)
if birth < 2000:
    print('00前')
else:
    print('00后')

循环

for…in循环

依次把list或tuple中的每个元素迭代出来(加冒号)

sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    sum = sum + x
print(sum)
names = ['Michael', 'Bob', 'Tracy']
for name in names:
    print(name)

补充
range()函数生成整数序列。
【语法】range(start, stop [,step]) ;
start 指的是计数起始值,默认是 0;
stop 指的是计数结束值,但不包括 stop ;
step 是步长,默认为 1,不可以为 0 。
range() 方法生成一段左闭右开的整数范围。

  1. 可以先range再转成list:
 list(range(5))

[0, 1, 2, 3, 4]

  1. 直接写进for循环里:
sum = 0
for x in range(101): #[0,1,2,...100]
    sum = sum + x
print(sum)

while循环

用法同C,不写括号写冒号。
break和continue语句与C中作用相同。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值